{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# HW2:在 Rental Listing Inquiries 数据上练习分类方法"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 首先 import 必要的模块\n",
    "import pandas as pd \n",
    "import numpy as np\n",
    "\n",
    "#用于计算feature字段的文本特征提取\n",
    "from sklearn.feature_extraction.text import  CountVectorizer\n",
    "#from sklearn.feature_extraction.text import TfidfVectorizer\n",
    "\n",
    "#CountVectorizer为稀疏特征，特征编码结果存为稀疏矩阵xgboost处理更高效\n",
    "from scipy import sparse\n",
    "\n",
    "#对类别型特征进行编码\n",
    "from sklearn.preprocessing import LabelEncoder\n",
    "\n",
    "from sklearn.model_selection import GridSearchCV\n",
    "# 数据分割\n",
    "from sklearn.model_selection import train_test_split\n",
    "# 数据标准化\n",
    "from sklearn.preprocessing import StandardScaler\n",
    "# 在这个作业中用正确率作为模型预测性能的度量（SVM并不能直接输出各类的概率）\n",
    "from sklearn.metrics import accuracy_score\n",
    "\n",
    "from matplotlib import pyplot\n",
    "import seaborn as sns\n",
    "%matplotlib inline"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 数据读取"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "scrolled": true
   },
   "outputs": [],
   "source": [
    "# 读取数据\n",
    "dpath = './week2data_RentListingInquries/'\n",
    "traindata = pd.read_json(dpath + \"RentListingInquries_train.json\")\n",
    "testdata = pd.read_json(dpath + \"RentListingInquries_test.json\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>bathrooms</th>\n",
       "      <th>bedrooms</th>\n",
       "      <th>building_id</th>\n",
       "      <th>created</th>\n",
       "      <th>description</th>\n",
       "      <th>display_address</th>\n",
       "      <th>features</th>\n",
       "      <th>latitude</th>\n",
       "      <th>listing_id</th>\n",
       "      <th>longitude</th>\n",
       "      <th>manager_id</th>\n",
       "      <th>photos</th>\n",
       "      <th>price</th>\n",
       "      <th>street_address</th>\n",
       "      <th>interest_level</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>1.5</td>\n",
       "      <td>3</td>\n",
       "      <td>53a5b119ba8f7b61d4e010512e0dfc85</td>\n",
       "      <td>2016-06-24 07:54:24</td>\n",
       "      <td>A Brand New 3 Bedroom 1.5 bath ApartmentEnjoy ...</td>\n",
       "      <td>Metropolitan Avenue</td>\n",
       "      <td>[]</td>\n",
       "      <td>40.7145</td>\n",
       "      <td>7211212</td>\n",
       "      <td>-73.9425</td>\n",
       "      <td>5ba989232d0489da1b5f2c45f6688adc</td>\n",
       "      <td>[https://photos.renthop.com/2/7211212_1ed4542e...</td>\n",
       "      <td>3000</td>\n",
       "      <td>792 Metropolitan Avenue</td>\n",
       "      <td>medium</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10000</th>\n",
       "      <td>1.0</td>\n",
       "      <td>2</td>\n",
       "      <td>c5c8a357cba207596b04d1afd1e4f130</td>\n",
       "      <td>2016-06-12 12:19:27</td>\n",
       "      <td></td>\n",
       "      <td>Columbus Avenue</td>\n",
       "      <td>[Doorman, Elevator, Fitness Center, Cats Allow...</td>\n",
       "      <td>40.7947</td>\n",
       "      <td>7150865</td>\n",
       "      <td>-73.9667</td>\n",
       "      <td>7533621a882f71e25173b27e3139d83d</td>\n",
       "      <td>[https://photos.renthop.com/2/7150865_be3306c5...</td>\n",
       "      <td>5465</td>\n",
       "      <td>808 Columbus Avenue</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100004</th>\n",
       "      <td>1.0</td>\n",
       "      <td>1</td>\n",
       "      <td>c3ba40552e2120b0acfc3cb5730bb2aa</td>\n",
       "      <td>2016-04-17 03:26:41</td>\n",
       "      <td>Top Top West Village location, beautiful Pre-w...</td>\n",
       "      <td>W 13 Street</td>\n",
       "      <td>[Laundry In Building, Dishwasher, Hardwood Flo...</td>\n",
       "      <td>40.7388</td>\n",
       "      <td>6887163</td>\n",
       "      <td>-74.0018</td>\n",
       "      <td>d9039c43983f6e564b1482b273bd7b01</td>\n",
       "      <td>[https://photos.renthop.com/2/6887163_de85c427...</td>\n",
       "      <td>2850</td>\n",
       "      <td>241 W 13 Street</td>\n",
       "      <td>high</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100007</th>\n",
       "      <td>1.0</td>\n",
       "      <td>1</td>\n",
       "      <td>28d9ad350afeaab8027513a3e52ac8d5</td>\n",
       "      <td>2016-04-18 02:22:02</td>\n",
       "      <td>Building Amenities - Garage - Garden - fitness...</td>\n",
       "      <td>East 49th Street</td>\n",
       "      <td>[Hardwood Floors, No Fee]</td>\n",
       "      <td>40.7539</td>\n",
       "      <td>6888711</td>\n",
       "      <td>-73.9677</td>\n",
       "      <td>1067e078446a7897d2da493d2f741316</td>\n",
       "      <td>[https://photos.renthop.com/2/6888711_6e660cee...</td>\n",
       "      <td>3275</td>\n",
       "      <td>333 East 49th Street</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100013</th>\n",
       "      <td>1.0</td>\n",
       "      <td>4</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-28 01:32:41</td>\n",
       "      <td>Beautifully renovated 3 bedroom flex 4 bedroom...</td>\n",
       "      <td>West 143rd Street</td>\n",
       "      <td>[Pre-War]</td>\n",
       "      <td>40.8241</td>\n",
       "      <td>6934781</td>\n",
       "      <td>-73.9493</td>\n",
       "      <td>98e13ad4b495b9613cef886d79a6291f</td>\n",
       "      <td>[https://photos.renthop.com/2/6934781_1fa4b41a...</td>\n",
       "      <td>3350</td>\n",
       "      <td>500 West 143rd Street</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "        bathrooms  bedrooms                       building_id  \\\n",
       "10            1.5         3  53a5b119ba8f7b61d4e010512e0dfc85   \n",
       "10000         1.0         2  c5c8a357cba207596b04d1afd1e4f130   \n",
       "100004        1.0         1  c3ba40552e2120b0acfc3cb5730bb2aa   \n",
       "100007        1.0         1  28d9ad350afeaab8027513a3e52ac8d5   \n",
       "100013        1.0         4                                 0   \n",
       "\n",
       "                    created  \\\n",
       "10      2016-06-24 07:54:24   \n",
       "10000   2016-06-12 12:19:27   \n",
       "100004  2016-04-17 03:26:41   \n",
       "100007  2016-04-18 02:22:02   \n",
       "100013  2016-04-28 01:32:41   \n",
       "\n",
       "                                              description  \\\n",
       "10      A Brand New 3 Bedroom 1.5 bath ApartmentEnjoy ...   \n",
       "10000                                                       \n",
       "100004  Top Top West Village location, beautiful Pre-w...   \n",
       "100007  Building Amenities - Garage - Garden - fitness...   \n",
       "100013  Beautifully renovated 3 bedroom flex 4 bedroom...   \n",
       "\n",
       "            display_address  \\\n",
       "10      Metropolitan Avenue   \n",
       "10000       Columbus Avenue   \n",
       "100004          W 13 Street   \n",
       "100007     East 49th Street   \n",
       "100013    West 143rd Street   \n",
       "\n",
       "                                                 features  latitude  \\\n",
       "10                                                     []   40.7145   \n",
       "10000   [Doorman, Elevator, Fitness Center, Cats Allow...   40.7947   \n",
       "100004  [Laundry In Building, Dishwasher, Hardwood Flo...   40.7388   \n",
       "100007                          [Hardwood Floors, No Fee]   40.7539   \n",
       "100013                                          [Pre-War]   40.8241   \n",
       "\n",
       "        listing_id  longitude                        manager_id  \\\n",
       "10         7211212   -73.9425  5ba989232d0489da1b5f2c45f6688adc   \n",
       "10000      7150865   -73.9667  7533621a882f71e25173b27e3139d83d   \n",
       "100004     6887163   -74.0018  d9039c43983f6e564b1482b273bd7b01   \n",
       "100007     6888711   -73.9677  1067e078446a7897d2da493d2f741316   \n",
       "100013     6934781   -73.9493  98e13ad4b495b9613cef886d79a6291f   \n",
       "\n",
       "                                                   photos  price  \\\n",
       "10      [https://photos.renthop.com/2/7211212_1ed4542e...   3000   \n",
       "10000   [https://photos.renthop.com/2/7150865_be3306c5...   5465   \n",
       "100004  [https://photos.renthop.com/2/6887163_de85c427...   2850   \n",
       "100007  [https://photos.renthop.com/2/6888711_6e660cee...   3275   \n",
       "100013  [https://photos.renthop.com/2/6934781_1fa4b41a...   3350   \n",
       "\n",
       "                 street_address interest_level  \n",
       "10      792 Metropolitan Avenue         medium  \n",
       "10000       808 Columbus Avenue            low  \n",
       "100004          241 W 13 Street           high  \n",
       "100007     333 East 49th Street            low  \n",
       "100013    500 West 143rd Street            low  "
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "traindata.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>bathrooms</th>\n",
       "      <th>bedrooms</th>\n",
       "      <th>building_id</th>\n",
       "      <th>created</th>\n",
       "      <th>description</th>\n",
       "      <th>display_address</th>\n",
       "      <th>features</th>\n",
       "      <th>latitude</th>\n",
       "      <th>listing_id</th>\n",
       "      <th>longitude</th>\n",
       "      <th>manager_id</th>\n",
       "      <th>photos</th>\n",
       "      <th>price</th>\n",
       "      <th>street_address</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>1.0</td>\n",
       "      <td>1</td>\n",
       "      <td>79780be1514f645d7e6be99a3de696c5</td>\n",
       "      <td>2016-06-11 05:29:41</td>\n",
       "      <td>Large with awesome terrace--accessible via bed...</td>\n",
       "      <td>Suffolk Street</td>\n",
       "      <td>[Elevator, Laundry in Building, Laundry in Uni...</td>\n",
       "      <td>40.7185</td>\n",
       "      <td>7142618</td>\n",
       "      <td>-73.9865</td>\n",
       "      <td>b1b1852c416d78d7765d746cb1b8921f</td>\n",
       "      <td>[https://photos.renthop.com/2/7142618_1c45a2c8...</td>\n",
       "      <td>2950</td>\n",
       "      <td>99 Suffolk Street</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>1.0</td>\n",
       "      <td>2</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-06-24 06:36:34</td>\n",
       "      <td>Prime Soho - between Bleecker and Houston - Ne...</td>\n",
       "      <td>Thompson Street</td>\n",
       "      <td>[Pre-War, Dogs Allowed, Cats Allowed]</td>\n",
       "      <td>40.7278</td>\n",
       "      <td>7210040</td>\n",
       "      <td>-74.0000</td>\n",
       "      <td>d0b5648017832b2427eeb9956d966a14</td>\n",
       "      <td>[https://photos.renthop.com/2/7210040_d824cc71...</td>\n",
       "      <td>2850</td>\n",
       "      <td>176 Thompson Street</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100</th>\n",
       "      <td>1.0</td>\n",
       "      <td>1</td>\n",
       "      <td>3dbbb69fd52e0d25131aa1cd459c87eb</td>\n",
       "      <td>2016-06-03 04:29:40</td>\n",
       "      <td>New York chic has reached a new level ...</td>\n",
       "      <td>101 East 10th Street</td>\n",
       "      <td>[Doorman, Elevator, No Fee]</td>\n",
       "      <td>40.7306</td>\n",
       "      <td>7103890</td>\n",
       "      <td>-73.9890</td>\n",
       "      <td>9ca6f3baa475c37a3b3521a394d65467</td>\n",
       "      <td>[https://photos.renthop.com/2/7103890_85b33077...</td>\n",
       "      <td>3758</td>\n",
       "      <td>101 East 10th Street</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1000</th>\n",
       "      <td>1.0</td>\n",
       "      <td>2</td>\n",
       "      <td>783d21d013a7e655bddc4ed0d461cc5e</td>\n",
       "      <td>2016-06-11 06:17:35</td>\n",
       "      <td>Step into this fantastic new Construction in t...</td>\n",
       "      <td>South Third Street\\r</td>\n",
       "      <td>[Roof Deck, Balcony, Elevator, Laundry in Buil...</td>\n",
       "      <td>40.7109</td>\n",
       "      <td>7143442</td>\n",
       "      <td>-73.9571</td>\n",
       "      <td>0b9d5db96db8472d7aeb67c67338c4d2</td>\n",
       "      <td>[https://photos.renthop.com/2/7143442_0879e9e0...</td>\n",
       "      <td>3300</td>\n",
       "      <td>251  South Third Street\\r</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100000</th>\n",
       "      <td>2.0</td>\n",
       "      <td>2</td>\n",
       "      <td>6134e7c4dd1a98d9aee36623c9872b49</td>\n",
       "      <td>2016-04-12 05:24:17</td>\n",
       "      <td>~Take a stroll in Central Park, enjoy the ente...</td>\n",
       "      <td>Midtown West, 8th Ave</td>\n",
       "      <td>[Common Outdoor Space, Cats Allowed, Dogs Allo...</td>\n",
       "      <td>40.7650</td>\n",
       "      <td>6860601</td>\n",
       "      <td>-73.9845</td>\n",
       "      <td>b5eda0eb31b042ce2124fd9e9fcfce2f</td>\n",
       "      <td>[https://photos.renthop.com/2/6860601_c96164d8...</td>\n",
       "      <td>4900</td>\n",
       "      <td>260 West 54th Street</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "        bathrooms  bedrooms                       building_id  \\\n",
       "0             1.0         1  79780be1514f645d7e6be99a3de696c5   \n",
       "1             1.0         2                                 0   \n",
       "100           1.0         1  3dbbb69fd52e0d25131aa1cd459c87eb   \n",
       "1000          1.0         2  783d21d013a7e655bddc4ed0d461cc5e   \n",
       "100000        2.0         2  6134e7c4dd1a98d9aee36623c9872b49   \n",
       "\n",
       "                    created  \\\n",
       "0       2016-06-11 05:29:41   \n",
       "1       2016-06-24 06:36:34   \n",
       "100     2016-06-03 04:29:40   \n",
       "1000    2016-06-11 06:17:35   \n",
       "100000  2016-04-12 05:24:17   \n",
       "\n",
       "                                              description  \\\n",
       "0       Large with awesome terrace--accessible via bed...   \n",
       "1       Prime Soho - between Bleecker and Houston - Ne...   \n",
       "100             New York chic has reached a new level ...   \n",
       "1000    Step into this fantastic new Construction in t...   \n",
       "100000  ~Take a stroll in Central Park, enjoy the ente...   \n",
       "\n",
       "              display_address  \\\n",
       "0              Suffolk Street   \n",
       "1             Thompson Street   \n",
       "100      101 East 10th Street   \n",
       "1000     South Third Street\\r   \n",
       "100000  Midtown West, 8th Ave   \n",
       "\n",
       "                                                 features  latitude  \\\n",
       "0       [Elevator, Laundry in Building, Laundry in Uni...   40.7185   \n",
       "1                   [Pre-War, Dogs Allowed, Cats Allowed]   40.7278   \n",
       "100                           [Doorman, Elevator, No Fee]   40.7306   \n",
       "1000    [Roof Deck, Balcony, Elevator, Laundry in Buil...   40.7109   \n",
       "100000  [Common Outdoor Space, Cats Allowed, Dogs Allo...   40.7650   \n",
       "\n",
       "        listing_id  longitude                        manager_id  \\\n",
       "0          7142618   -73.9865  b1b1852c416d78d7765d746cb1b8921f   \n",
       "1          7210040   -74.0000  d0b5648017832b2427eeb9956d966a14   \n",
       "100        7103890   -73.9890  9ca6f3baa475c37a3b3521a394d65467   \n",
       "1000       7143442   -73.9571  0b9d5db96db8472d7aeb67c67338c4d2   \n",
       "100000     6860601   -73.9845  b5eda0eb31b042ce2124fd9e9fcfce2f   \n",
       "\n",
       "                                                   photos  price  \\\n",
       "0       [https://photos.renthop.com/2/7142618_1c45a2c8...   2950   \n",
       "1       [https://photos.renthop.com/2/7210040_d824cc71...   2850   \n",
       "100     [https://photos.renthop.com/2/7103890_85b33077...   3758   \n",
       "1000    [https://photos.renthop.com/2/7143442_0879e9e0...   3300   \n",
       "100000  [https://photos.renthop.com/2/6860601_c96164d8...   4900   \n",
       "\n",
       "                   street_address  \n",
       "0               99 Suffolk Street  \n",
       "1             176 Thompson Street  \n",
       "100          101 East 10th Street  \n",
       "1000    251  South Third Street\\r  \n",
       "100000       260 West 54th Street  "
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "testdata.head()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 数据基本信息"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "<class 'pandas.core.frame.DataFrame'>\n",
      "Int64Index: 49352 entries, 10 to 99994\n",
      "Data columns (total 15 columns):\n",
      "bathrooms          49352 non-null float64\n",
      "bedrooms           49352 non-null int64\n",
      "building_id        49352 non-null object\n",
      "created            49352 non-null object\n",
      "description        49352 non-null object\n",
      "display_address    49352 non-null object\n",
      "features           49352 non-null object\n",
      "latitude           49352 non-null float64\n",
      "listing_id         49352 non-null int64\n",
      "longitude          49352 non-null float64\n",
      "manager_id         49352 non-null object\n",
      "photos             49352 non-null object\n",
      "price              49352 non-null int64\n",
      "street_address     49352 non-null object\n",
      "interest_level     49352 non-null object\n",
      "dtypes: float64(3), int64(3), object(9)\n",
      "memory usage: 6.0+ MB\n"
     ]
    }
   ],
   "source": [
    "traindata.info()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "bathrooms          0\n",
       "bedrooms           0\n",
       "building_id        0\n",
       "created            0\n",
       "description        0\n",
       "display_address    0\n",
       "features           0\n",
       "latitude           0\n",
       "listing_id         0\n",
       "longitude          0\n",
       "manager_id         0\n",
       "photos             0\n",
       "price              0\n",
       "street_address     0\n",
       "interest_level     0\n",
       "dtype: int64"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 查看是否有空值\n",
    "traindata.isnull().sum()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>bathrooms</th>\n",
       "      <th>bedrooms</th>\n",
       "      <th>latitude</th>\n",
       "      <th>listing_id</th>\n",
       "      <th>longitude</th>\n",
       "      <th>price</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>count</th>\n",
       "      <td>49352.00000</td>\n",
       "      <td>49352.000000</td>\n",
       "      <td>49352.000000</td>\n",
       "      <td>4.935200e+04</td>\n",
       "      <td>49352.000000</td>\n",
       "      <td>4.935200e+04</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>mean</th>\n",
       "      <td>1.21218</td>\n",
       "      <td>1.541640</td>\n",
       "      <td>40.741545</td>\n",
       "      <td>7.024055e+06</td>\n",
       "      <td>-73.955716</td>\n",
       "      <td>3.830174e+03</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>std</th>\n",
       "      <td>0.50142</td>\n",
       "      <td>1.115018</td>\n",
       "      <td>0.638535</td>\n",
       "      <td>1.262746e+05</td>\n",
       "      <td>1.177912</td>\n",
       "      <td>2.206687e+04</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>min</th>\n",
       "      <td>0.00000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>6.811957e+06</td>\n",
       "      <td>-118.271000</td>\n",
       "      <td>4.300000e+01</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25%</th>\n",
       "      <td>1.00000</td>\n",
       "      <td>1.000000</td>\n",
       "      <td>40.728300</td>\n",
       "      <td>6.915888e+06</td>\n",
       "      <td>-73.991700</td>\n",
       "      <td>2.500000e+03</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>50%</th>\n",
       "      <td>1.00000</td>\n",
       "      <td>1.000000</td>\n",
       "      <td>40.751800</td>\n",
       "      <td>7.021070e+06</td>\n",
       "      <td>-73.977900</td>\n",
       "      <td>3.150000e+03</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>75%</th>\n",
       "      <td>1.00000</td>\n",
       "      <td>2.000000</td>\n",
       "      <td>40.774300</td>\n",
       "      <td>7.128733e+06</td>\n",
       "      <td>-73.954800</td>\n",
       "      <td>4.100000e+03</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>max</th>\n",
       "      <td>10.00000</td>\n",
       "      <td>8.000000</td>\n",
       "      <td>44.883500</td>\n",
       "      <td>7.753784e+06</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>4.490000e+06</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "         bathrooms      bedrooms      latitude    listing_id     longitude  \\\n",
       "count  49352.00000  49352.000000  49352.000000  4.935200e+04  49352.000000   \n",
       "mean       1.21218      1.541640     40.741545  7.024055e+06    -73.955716   \n",
       "std        0.50142      1.115018      0.638535  1.262746e+05      1.177912   \n",
       "min        0.00000      0.000000      0.000000  6.811957e+06   -118.271000   \n",
       "25%        1.00000      1.000000     40.728300  6.915888e+06    -73.991700   \n",
       "50%        1.00000      1.000000     40.751800  7.021070e+06    -73.977900   \n",
       "75%        1.00000      2.000000     40.774300  7.128733e+06    -73.954800   \n",
       "max       10.00000      8.000000     44.883500  7.753784e+06      0.000000   \n",
       "\n",
       "              price  \n",
       "count  4.935200e+04  \n",
       "mean   3.830174e+03  \n",
       "std    2.206687e+04  \n",
       "min    4.300000e+01  \n",
       "25%    2.500000e+03  \n",
       "50%    3.150000e+03  \n",
       "75%    4.100000e+03  \n",
       "max    4.490000e+06  "
      ]
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 各属性的统计特性\n",
    "traindata.describe()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "<class 'pandas.core.frame.DataFrame'>\n",
      "Int64Index: 74659 entries, 0 to 99999\n",
      "Data columns (total 14 columns):\n",
      "bathrooms          74659 non-null float64\n",
      "bedrooms           74659 non-null int64\n",
      "building_id        74659 non-null object\n",
      "created            74659 non-null object\n",
      "description        74659 non-null object\n",
      "display_address    74659 non-null object\n",
      "features           74659 non-null object\n",
      "latitude           74659 non-null float64\n",
      "listing_id         74659 non-null int64\n",
      "longitude          74659 non-null float64\n",
      "manager_id         74659 non-null object\n",
      "photos             74659 non-null object\n",
      "price              74659 non-null int64\n",
      "street_address     74659 non-null object\n",
      "dtypes: float64(3), int64(3), object(8)\n",
      "memory usage: 8.5+ MB\n"
     ]
    }
   ],
   "source": [
    "testdata.info()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "bathrooms          0\n",
       "bedrooms           0\n",
       "building_id        0\n",
       "created            0\n",
       "description        0\n",
       "display_address    0\n",
       "features           0\n",
       "latitude           0\n",
       "listing_id         0\n",
       "longitude          0\n",
       "manager_id         0\n",
       "photos             0\n",
       "price              0\n",
       "street_address     0\n",
       "dtype: int64"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 查看是否有空值\n",
    "testdata.isnull().sum()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>bathrooms</th>\n",
       "      <th>bedrooms</th>\n",
       "      <th>latitude</th>\n",
       "      <th>listing_id</th>\n",
       "      <th>longitude</th>\n",
       "      <th>price</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>count</th>\n",
       "      <td>74659.000000</td>\n",
       "      <td>74659.000000</td>\n",
       "      <td>74659.000000</td>\n",
       "      <td>7.465900e+04</td>\n",
       "      <td>74659.000000</td>\n",
       "      <td>7.465900e+04</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>mean</th>\n",
       "      <td>1.212915</td>\n",
       "      <td>1.544663</td>\n",
       "      <td>40.735060</td>\n",
       "      <td>7.024001e+06</td>\n",
       "      <td>-73.945282</td>\n",
       "      <td>3.749033e+03</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>std</th>\n",
       "      <td>0.649820</td>\n",
       "      <td>1.107014</td>\n",
       "      <td>0.806687</td>\n",
       "      <td>1.264496e+05</td>\n",
       "      <td>1.487795</td>\n",
       "      <td>9.713092e+03</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>min</th>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>6.811958e+06</td>\n",
       "      <td>-121.488000</td>\n",
       "      <td>1.000000e+00</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25%</th>\n",
       "      <td>1.000000</td>\n",
       "      <td>1.000000</td>\n",
       "      <td>40.727800</td>\n",
       "      <td>6.915516e+06</td>\n",
       "      <td>-73.991800</td>\n",
       "      <td>2.495000e+03</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>50%</th>\n",
       "      <td>1.000000</td>\n",
       "      <td>1.000000</td>\n",
       "      <td>40.751600</td>\n",
       "      <td>7.021738e+06</td>\n",
       "      <td>-73.977700</td>\n",
       "      <td>3.150000e+03</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>75%</th>\n",
       "      <td>1.000000</td>\n",
       "      <td>2.000000</td>\n",
       "      <td>40.774300</td>\n",
       "      <td>7.129166e+06</td>\n",
       "      <td>-73.954700</td>\n",
       "      <td>4.100000e+03</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>max</th>\n",
       "      <td>112.000000</td>\n",
       "      <td>7.000000</td>\n",
       "      <td>42.872700</td>\n",
       "      <td>7.761779e+06</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>1.675000e+06</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "          bathrooms      bedrooms      latitude    listing_id     longitude  \\\n",
       "count  74659.000000  74659.000000  74659.000000  7.465900e+04  74659.000000   \n",
       "mean       1.212915      1.544663     40.735060  7.024001e+06    -73.945282   \n",
       "std        0.649820      1.107014      0.806687  1.264496e+05      1.487795   \n",
       "min        0.000000      0.000000      0.000000  6.811958e+06   -121.488000   \n",
       "25%        1.000000      1.000000     40.727800  6.915516e+06    -73.991800   \n",
       "50%        1.000000      1.000000     40.751600  7.021738e+06    -73.977700   \n",
       "75%        1.000000      2.000000     40.774300  7.129166e+06    -73.954700   \n",
       "max      112.000000      7.000000     42.872700  7.761779e+06      0.000000   \n",
       "\n",
       "              price  \n",
       "count  7.465900e+04  \n",
       "mean   3.749033e+03  \n",
       "std    9.713092e+03  \n",
       "min    1.000000e+00  \n",
       "25%    2.495000e+03  \n",
       "50%    3.150000e+03  \n",
       "75%    4.100000e+03  \n",
       "max    1.675000e+06  "
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 各属性的统计特性\n",
    "testdata.describe()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 受欢迎程度 分布，看看各类样本分布是否均衡\n",
    "sns.countplot(traindata.interest_level, order=['high', 'medium', 'low']);\n",
    "pyplot.xlabel('Interestlevel');\n",
    "pyplot.ylabel('Number of occurrences');"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "小结：    \n",
    "1、训练和测试数据中没有缺失值；     \n",
    "2、可以用有序数组对感兴趣等级进行编码；    \n",
    "3、各类样本不均衡，使用交叉验证对分类任务缺省的StratifiedKFold（分层交叉验证），在每折采样时根据各类样本按比例采样；   \n",
    "4、building_id、listing_id和manager_id为id，无实际意义，可删除这3个特征。"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 数据探索"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### 删除无用特征"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [],
   "source": [
    "# building_id、listing_id和manager_id为id，无实际意义,删除这3个特征\n",
    "traindata.drop(['building_id', 'listing_id','manager_id'], axis = 1, inplace = True)\n",
    "testdata.drop(['building_id', 'listing_id','manager_id'], axis = 1, inplace = True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>bathrooms</th>\n",
       "      <th>bedrooms</th>\n",
       "      <th>created</th>\n",
       "      <th>description</th>\n",
       "      <th>display_address</th>\n",
       "      <th>features</th>\n",
       "      <th>latitude</th>\n",
       "      <th>longitude</th>\n",
       "      <th>photos</th>\n",
       "      <th>price</th>\n",
       "      <th>street_address</th>\n",
       "      <th>interest_level</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>1.5</td>\n",
       "      <td>3</td>\n",
       "      <td>2016-06-24 07:54:24</td>\n",
       "      <td>A Brand New 3 Bedroom 1.5 bath ApartmentEnjoy ...</td>\n",
       "      <td>Metropolitan Avenue</td>\n",
       "      <td>[]</td>\n",
       "      <td>40.7145</td>\n",
       "      <td>-73.9425</td>\n",
       "      <td>[https://photos.renthop.com/2/7211212_1ed4542e...</td>\n",
       "      <td>3000</td>\n",
       "      <td>792 Metropolitan Avenue</td>\n",
       "      <td>medium</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10000</th>\n",
       "      <td>1.0</td>\n",
       "      <td>2</td>\n",
       "      <td>2016-06-12 12:19:27</td>\n",
       "      <td></td>\n",
       "      <td>Columbus Avenue</td>\n",
       "      <td>[Doorman, Elevator, Fitness Center, Cats Allow...</td>\n",
       "      <td>40.7947</td>\n",
       "      <td>-73.9667</td>\n",
       "      <td>[https://photos.renthop.com/2/7150865_be3306c5...</td>\n",
       "      <td>5465</td>\n",
       "      <td>808 Columbus Avenue</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100004</th>\n",
       "      <td>1.0</td>\n",
       "      <td>1</td>\n",
       "      <td>2016-04-17 03:26:41</td>\n",
       "      <td>Top Top West Village location, beautiful Pre-w...</td>\n",
       "      <td>W 13 Street</td>\n",
       "      <td>[Laundry In Building, Dishwasher, Hardwood Flo...</td>\n",
       "      <td>40.7388</td>\n",
       "      <td>-74.0018</td>\n",
       "      <td>[https://photos.renthop.com/2/6887163_de85c427...</td>\n",
       "      <td>2850</td>\n",
       "      <td>241 W 13 Street</td>\n",
       "      <td>high</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100007</th>\n",
       "      <td>1.0</td>\n",
       "      <td>1</td>\n",
       "      <td>2016-04-18 02:22:02</td>\n",
       "      <td>Building Amenities - Garage - Garden - fitness...</td>\n",
       "      <td>East 49th Street</td>\n",
       "      <td>[Hardwood Floors, No Fee]</td>\n",
       "      <td>40.7539</td>\n",
       "      <td>-73.9677</td>\n",
       "      <td>[https://photos.renthop.com/2/6888711_6e660cee...</td>\n",
       "      <td>3275</td>\n",
       "      <td>333 East 49th Street</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100013</th>\n",
       "      <td>1.0</td>\n",
       "      <td>4</td>\n",
       "      <td>2016-04-28 01:32:41</td>\n",
       "      <td>Beautifully renovated 3 bedroom flex 4 bedroom...</td>\n",
       "      <td>West 143rd Street</td>\n",
       "      <td>[Pre-War]</td>\n",
       "      <td>40.8241</td>\n",
       "      <td>-73.9493</td>\n",
       "      <td>[https://photos.renthop.com/2/6934781_1fa4b41a...</td>\n",
       "      <td>3350</td>\n",
       "      <td>500 West 143rd Street</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "        bathrooms  bedrooms              created  \\\n",
       "10            1.5         3  2016-06-24 07:54:24   \n",
       "10000         1.0         2  2016-06-12 12:19:27   \n",
       "100004        1.0         1  2016-04-17 03:26:41   \n",
       "100007        1.0         1  2016-04-18 02:22:02   \n",
       "100013        1.0         4  2016-04-28 01:32:41   \n",
       "\n",
       "                                              description  \\\n",
       "10      A Brand New 3 Bedroom 1.5 bath ApartmentEnjoy ...   \n",
       "10000                                                       \n",
       "100004  Top Top West Village location, beautiful Pre-w...   \n",
       "100007  Building Amenities - Garage - Garden - fitness...   \n",
       "100013  Beautifully renovated 3 bedroom flex 4 bedroom...   \n",
       "\n",
       "            display_address  \\\n",
       "10      Metropolitan Avenue   \n",
       "10000       Columbus Avenue   \n",
       "100004          W 13 Street   \n",
       "100007     East 49th Street   \n",
       "100013    West 143rd Street   \n",
       "\n",
       "                                                 features  latitude  \\\n",
       "10                                                     []   40.7145   \n",
       "10000   [Doorman, Elevator, Fitness Center, Cats Allow...   40.7947   \n",
       "100004  [Laundry In Building, Dishwasher, Hardwood Flo...   40.7388   \n",
       "100007                          [Hardwood Floors, No Fee]   40.7539   \n",
       "100013                                          [Pre-War]   40.8241   \n",
       "\n",
       "        longitude                                             photos  price  \\\n",
       "10       -73.9425  [https://photos.renthop.com/2/7211212_1ed4542e...   3000   \n",
       "10000    -73.9667  [https://photos.renthop.com/2/7150865_be3306c5...   5465   \n",
       "100004   -74.0018  [https://photos.renthop.com/2/6887163_de85c427...   2850   \n",
       "100007   -73.9677  [https://photos.renthop.com/2/6888711_6e660cee...   3275   \n",
       "100013   -73.9493  [https://photos.renthop.com/2/6934781_1fa4b41a...   3350   \n",
       "\n",
       "                 street_address interest_level  \n",
       "10      792 Metropolitan Avenue         medium  \n",
       "10000       808 Columbus Avenue            low  \n",
       "100004          241 W 13 Street           high  \n",
       "100007     333 East 49th Street            low  \n",
       "100013    500 West 143rd Street            low  "
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "traindata.head()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 特征工程"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### bathrooms 浴室数量"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\matplotlib\\axes\\_axes.py:6462: UserWarning: The 'normed' kwarg is deprecated, and has been replaced by the 'density' kwarg.\n",
      "  warnings.warn(\"The 'normed' kwarg is deprecated, and has been \"\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = pyplot.figure()\n",
    "sns.distplot(traindata.bathrooms.values, bins=30, kde=False)\n",
    "pyplot.xlabel('Number of Bathrooms', fontsize=10)\n",
    "pyplot.ylabel('Number of occurrences', fontsize=10)\n",
    "pyplot.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Text(0.5,1,'Number of Bathrooms Vs Interest_level')"
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 查看浴室数量和感兴趣程度间关系\n",
    "sns.stripplot(traindata[\"interest_level\"],traindata[\"bathrooms\"], jitter=True)\n",
    "pyplot.title(\"Number of Bathrooms Vs Interest_level\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "由图中可以看出大部分样本的浴室数目集中在0到4之间，有一个样本为数目10，查看该样本的卧室数量是否大于等于浴室数量。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>bathrooms</th>\n",
       "      <th>bedrooms</th>\n",
       "      <th>created</th>\n",
       "      <th>description</th>\n",
       "      <th>display_address</th>\n",
       "      <th>features</th>\n",
       "      <th>latitude</th>\n",
       "      <th>longitude</th>\n",
       "      <th>photos</th>\n",
       "      <th>price</th>\n",
       "      <th>street_address</th>\n",
       "      <th>interest_level</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>104459</th>\n",
       "      <td>10.0</td>\n",
       "      <td>2</td>\n",
       "      <td>2016-04-09 04:34:31</td>\n",
       "      <td>***The building?s well-attended lobby welcomes...</td>\n",
       "      <td>W 52 St.</td>\n",
       "      <td>[Doorman, Elevator, Fitness Center, Laundry in...</td>\n",
       "      <td>40.7633</td>\n",
       "      <td>-73.9849</td>\n",
       "      <td>[https://photos.renthop.com/2/6849204_1f92b58a...</td>\n",
       "      <td>3600</td>\n",
       "      <td>260 W 52 St.</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "        bathrooms  bedrooms              created  \\\n",
       "104459       10.0         2  2016-04-09 04:34:31   \n",
       "\n",
       "                                              description display_address  \\\n",
       "104459  ***The building?s well-attended lobby welcomes...        W 52 St.   \n",
       "\n",
       "                                                 features  latitude  \\\n",
       "104459  [Doorman, Elevator, Fitness Center, Laundry in...   40.7633   \n",
       "\n",
       "        longitude                                             photos  price  \\\n",
       "104459   -73.9849  [https://photos.renthop.com/2/6849204_1f92b58a...   3600   \n",
       "\n",
       "       street_address interest_level  \n",
       "104459   260 W 52 St.            low  "
      ]
     },
     "execution_count": 16,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "traindata[traindata[\"bathrooms\"] == 10]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "浴室数目为10的样本，对应的卧室数目为2，按照常理，一般2卧室的房子拥有1间浴室，因此将此样本的浴室数目改为1."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [],
   "source": [
    "traindata[\"bathrooms\"] = traindata[\"bathrooms\"].replace(10, 1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x19ebc95d780>"
      ]
     },
     "execution_count": 18,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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HMDdt7n7PnffD9xNtHsLoi2NTgmr5wJbamh/B2hjZs2qtB/E3We4e6G7F7Zv3z7MixMRkYNkLFTiYx73ABvc/bcJ7ccndBsFrIvvzwMuNbMW8VldXYHlwAqgq5l1NrPDiQ7mz4unDXgRuChefyzwVKZej4iI1C6Tx1QGA98B1ppZxTfq/pPo7K0Col1VpcBVAO6+3sweAYqJzhyb6O77AMzsamAB0SnFM9294rzc/wBmm9l/Aa8ShVi99Z00K8QwlVb938uDjleboUOHMm3aNAoLCznvvPN46KGHaNOmTYPWICKHpoyFirsvJvlxj2rncXf3XwK/TNI+P9l67v4Gn+8+kyQ0bb6INCR9o76RKN38Nt26dePKK6+kZ8+eXHbZZTz//PMMHjyYrl27snz5cj766COuuOIK+vXrx6mnnspTT0V7+z755BMuvfRS8vPzGT16NJ988knluHl5ebzzzjuUlpbSs2fPyvZp06YxZcoUINqyue666ygqKuKUU05hxYoVXHjhhXTt2rVyjjARkVRoQslGpKSkhEcffZQZM2bQr18/HnroIRYvXsy8efP41a9+Rffu3TnjjDOYOXMm7777Lv379+ess87iD3/4A1/60pdYs2YNa9asoU+fPnV+7sMPP5xFixZx6623MnLkSFatWsUxxxzDV7/6Va677rrKucJERGqiUGlEOnfuTK9evQDo0aMHZ555JmZGr169KC0tpaysjHnz5jFt2jQAdu/ezVtvvcWiRYu45pprAMjPzyc/P7/Oz33++ecD0KtXL3r06MHxx0fnU3Tp0oXNmzcrVEQkJQqVRiRxiv3DDjus8vFhhx3G3r17ycnJYe7cuZx88skHrRudbFe9Zs2asX///srHu3fvTvrcic+b+NwiIqnQMZUm5JxzzuG2226jYhLQV199FYCioiIefPBBANatW8eaNWsOWrdDhw5s376dHTt28Omnn/LMM880XOEicsjQlkoSDX0KcKp+/vOfc+2115Kfn4+7k5eXxzPPPMMPfvADxo8fT35+PgUFBfTvf/AJcc2bN2fy5MkMGDCAzp07061btyy8AhH5osvY1PeNlaa+D0NT34scWhrD1PciInKIUaiIiEgwChUREQlGoSIiIsEoVEREJBiFioiIBKPvqSTx1tReQcc7YfLaWvu07dqPDz/6OOjziog0NG2piIhIMAqV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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 绘制浴室数量和感兴趣程度的直方图\n",
    "sns.countplot(x=\"bathrooms\", hue=\"interest_level\",data=traindata)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "由直方图可以看出，当浴室数量为0时，感兴趣程度均为低。"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### price 价格"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\matplotlib\\axes\\_axes.py:6462: UserWarning: The 'normed' kwarg is deprecated, and has been replaced by the 'density' kwarg.\n",
      "  warnings.warn(\"The 'normed' kwarg is deprecated, and has been \"\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = pyplot.figure()\n",
    "sns.distplot(traindata.price.values, bins=30, kde=False)\n",
    "pyplot.xlabel('Number of Bedrooms', fontsize=10)\n",
    "pyplot.ylabel('Number of occurrences', fontsize=10)\n",
    "pyplot.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Text(0.5,1,'Number of price Vs Interest_level')"
      ]
     },
     "execution_count": 20,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 查看浴室数量和感兴趣程度间关系\n",
    "sns.stripplot(traindata[\"interest_level\"],traindata[\"price\"], jitter=True)\n",
    "pyplot.title(\"Number of price Vs Interest_level\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "由图中可以看出大部分房屋租金都在1万以下，个别样本价格超过了50万，查看这几个样本的房间数量是否物有所值。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>bathrooms</th>\n",
       "      <th>bedrooms</th>\n",
       "      <th>created</th>\n",
       "      <th>description</th>\n",
       "      <th>display_address</th>\n",
       "      <th>features</th>\n",
       "      <th>latitude</th>\n",
       "      <th>longitude</th>\n",
       "      <th>photos</th>\n",
       "      <th>price</th>\n",
       "      <th>street_address</th>\n",
       "      <th>interest_level</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>12168</th>\n",
       "      <td>1.0</td>\n",
       "      <td>2</td>\n",
       "      <td>2016-06-24 05:02:58</td>\n",
       "      <td></td>\n",
       "      <td>West 116th Street</td>\n",
       "      <td>[Doorman, Elevator, Cats Allowed, Dogs Allowed...</td>\n",
       "      <td>40.8011</td>\n",
       "      <td>-73.9480</td>\n",
       "      <td>[]</td>\n",
       "      <td>1150000</td>\n",
       "      <td>40 West 116th Street</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>32611</th>\n",
       "      <td>1.0</td>\n",
       "      <td>2</td>\n",
       "      <td>2016-06-24 05:02:11</td>\n",
       "      <td></td>\n",
       "      <td>Hudson Street</td>\n",
       "      <td>[Doorman, Elevator, Cats Allowed, Dogs Allowed...</td>\n",
       "      <td>40.7299</td>\n",
       "      <td>-74.0071</td>\n",
       "      <td>[]</td>\n",
       "      <td>4490000</td>\n",
       "      <td>421 Hudson Street</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>55437</th>\n",
       "      <td>1.0</td>\n",
       "      <td>1</td>\n",
       "      <td>2016-05-14 05:21:28</td>\n",
       "      <td></td>\n",
       "      <td>West 57th Street</td>\n",
       "      <td>[Doorman, Cats Allowed, Dogs Allowed]</td>\n",
       "      <td>40.7676</td>\n",
       "      <td>-73.9844</td>\n",
       "      <td>[]</td>\n",
       "      <td>1070000</td>\n",
       "      <td>333 West 57th Street</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>57803</th>\n",
       "      <td>1.0</td>\n",
       "      <td>1</td>\n",
       "      <td>2016-05-19 02:37:06</td>\n",
       "      <td>This 1 Bedroom apartment is located on a prime...</td>\n",
       "      <td>West 57th Street</td>\n",
       "      <td>[Doorman, Elevator, Pre-War, Dogs Allowed, Cat...</td>\n",
       "      <td>40.7676</td>\n",
       "      <td>-73.9844</td>\n",
       "      <td>[https://photos.renthop.com/2/7036279_924b52f0...</td>\n",
       "      <td>1070000</td>\n",
       "      <td>333 West 57th Street</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "       bathrooms  bedrooms              created  \\\n",
       "12168        1.0         2  2016-06-24 05:02:58   \n",
       "32611        1.0         2  2016-06-24 05:02:11   \n",
       "55437        1.0         1  2016-05-14 05:21:28   \n",
       "57803        1.0         1  2016-05-19 02:37:06   \n",
       "\n",
       "                                             description    display_address  \\\n",
       "12168                                                     West 116th Street   \n",
       "32611                                                         Hudson Street   \n",
       "55437                                                      West 57th Street   \n",
       "57803  This 1 Bedroom apartment is located on a prime...   West 57th Street   \n",
       "\n",
       "                                                features  latitude  longitude  \\\n",
       "12168  [Doorman, Elevator, Cats Allowed, Dogs Allowed...   40.8011   -73.9480   \n",
       "32611  [Doorman, Elevator, Cats Allowed, Dogs Allowed...   40.7299   -74.0071   \n",
       "55437              [Doorman, Cats Allowed, Dogs Allowed]   40.7676   -73.9844   \n",
       "57803  [Doorman, Elevator, Pre-War, Dogs Allowed, Cat...   40.7676   -73.9844   \n",
       "\n",
       "                                                  photos    price  \\\n",
       "12168                                                 []  1150000   \n",
       "32611                                                 []  4490000   \n",
       "55437                                                 []  1070000   \n",
       "57803  [https://photos.renthop.com/2/7036279_924b52f0...  1070000   \n",
       "\n",
       "             street_address interest_level  \n",
       "12168  40 West 116th Street            low  \n",
       "32611     421 Hudson Street            low  \n",
       "55437  333 West 57th Street            low  \n",
       "57803  333 West 57th Street            low  "
      ]
     },
     "execution_count": 21,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "traindata[traindata[\"price\"] > 500000]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "由上表可以看出，4个价格远超其他房屋价格的样本，房间数量不超过2，因此，考虑这几个样本的价格值为异常值，予以剔除。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [],
   "source": [
    "traindata = traindata.loc[traindata.price < 500000]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Text(0.5,1,'Number of price Vs Interest_level')"
      ]
     },
     "execution_count": 23,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 查看浴室数量和感兴趣程度间关系\n",
    "sns.stripplot(traindata[\"interest_level\"],traindata[\"price\"], jitter=True)\n",
    "pyplot.title(\"Number of price Vs Interest_level\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "由上图可以看出：  \n",
    "大部分样本房屋价格都小于4000；  \n",
    "兴趣程度高和中等的房屋价格均偏低，一般不超过2万，有个别兴趣程度高的样本价格超过10万，查看这些样本看是否合理。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>bathrooms</th>\n",
       "      <th>bedrooms</th>\n",
       "      <th>created</th>\n",
       "      <th>description</th>\n",
       "      <th>display_address</th>\n",
       "      <th>features</th>\n",
       "      <th>latitude</th>\n",
       "      <th>longitude</th>\n",
       "      <th>photos</th>\n",
       "      <th>price</th>\n",
       "      <th>street_address</th>\n",
       "      <th>interest_level</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>4620</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-06-07 17:35:10</td>\n",
       "      <td>The BEST DEAL!!!!!\\r\\rBeautiful Studio in a ni...</td>\n",
       "      <td>Van Horn St and 57th ave</td>\n",
       "      <td>[Elevator, Laundry In Building, Balcony]</td>\n",
       "      <td>40.7323</td>\n",
       "      <td>-73.8761</td>\n",
       "      <td>[https://photos.renthop.com/2/7122037_531f0877...</td>\n",
       "      <td>111111</td>\n",
       "      <td>57-25 Van Horn St</td>\n",
       "      <td>high</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "      bathrooms  bedrooms              created  \\\n",
       "4620        1.0         0  2016-06-07 17:35:10   \n",
       "\n",
       "                                            description  \\\n",
       "4620  The BEST DEAL!!!!!\\r\\rBeautiful Studio in a ni...   \n",
       "\n",
       "               display_address                                  features  \\\n",
       "4620  Van Horn St and 57th ave  [Elevator, Laundry In Building, Balcony]   \n",
       "\n",
       "      latitude  longitude                                             photos  \\\n",
       "4620   40.7323   -73.8761  [https://photos.renthop.com/2/7122037_531f0877...   \n",
       "\n",
       "       price     street_address interest_level  \n",
       "4620  111111  57-25 Van Horn St           high  "
      ]
     },
     "execution_count": 24,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "traindata[(traindata[\"price\"] > 100000) & (traindata[\"interest_level\"] == \"high\")]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "上表所示样本房间数目为0，房屋价格为11万，显然不符合实际，为异常样本，予以删除。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {},
   "outputs": [],
   "source": [
    "traindata = traindata[(traindata[\"price\"] <= 100000) | (traindata[\"interest_level\"] != \"high\")]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\matplotlib\\axes\\_axes.py:6462: UserWarning: The 'normed' kwarg is deprecated, and has been replaced by the 'density' kwarg.\n",
      "  warnings.warn(\"The 'normed' kwarg is deprecated, and has been \"\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = pyplot.figure()\n",
    "sns.distplot(traindata.price.values, bins=30, kde=False)\n",
    "pyplot.xlabel('Number of Bedrooms', fontsize=10)\n",
    "pyplot.ylabel('Number of occurrences', fontsize=10)\n",
    "pyplot.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Bedrooms 卧室数量"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\matplotlib\\axes\\_axes.py:6462: UserWarning: The 'normed' kwarg is deprecated, and has been replaced by the 'density' kwarg.\n",
      "  warnings.warn(\"The 'normed' kwarg is deprecated, and has been \"\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = pyplot.figure()\n",
    "sns.distplot(traindata.bedrooms.values, bins=30, kde=False)\n",
    "pyplot.xlabel('Number of Bedrooms', fontsize=10)\n",
    "pyplot.ylabel('Number of occurrences', fontsize=10)\n",
    "pyplot.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "由上图可以看出，存在大量房源，房间数为0，显然不合理，因此类样本数量多，不能直接删除，先查看这些房间数为0的样本。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>bathrooms</th>\n",
       "      <th>bedrooms</th>\n",
       "      <th>created</th>\n",
       "      <th>description</th>\n",
       "      <th>display_address</th>\n",
       "      <th>features</th>\n",
       "      <th>latitude</th>\n",
       "      <th>longitude</th>\n",
       "      <th>photos</th>\n",
       "      <th>price</th>\n",
       "      <th>street_address</th>\n",
       "      <th>interest_level</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>100030</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-14 01:10:30</td>\n",
       "      <td>New to the market! Spacious studio located in ...</td>\n",
       "      <td>York Avenue</td>\n",
       "      <td>[]</td>\n",
       "      <td>40.7769</td>\n",
       "      <td>-73.9467</td>\n",
       "      <td>[https://photos.renthop.com/2/6869199_06b2601f...</td>\n",
       "      <td>1950</td>\n",
       "      <td>1661 York Avenue</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100051</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-18 02:36:00</td>\n",
       "      <td>Stunning  full renovated studio unit. High cei...</td>\n",
       "      <td>East 34th Street</td>\n",
       "      <td>[Doorman, Elevator, Fitness Center, Laundry in...</td>\n",
       "      <td>40.7439</td>\n",
       "      <td>-73.9743</td>\n",
       "      <td>[https://photos.renthop.com/2/6889043_a3e1c004...</td>\n",
       "      <td>2350</td>\n",
       "      <td>340 East 34th Street</td>\n",
       "      <td>medium</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100083</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-21 02:17:28</td>\n",
       "      <td>Enjoy the Upper West Side life-style!  This ap...</td>\n",
       "      <td>250 West 88th Street</td>\n",
       "      <td>[Doorman, Elevator, Pre-War, Exclusive, Dogs A...</td>\n",
       "      <td>40.7897</td>\n",
       "      <td>-73.9760</td>\n",
       "      <td>[https://photos.renthop.com/2/6904268_657c825a...</td>\n",
       "      <td>2750</td>\n",
       "      <td>250 West 88th Street</td>\n",
       "      <td>medium</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100096</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-04 03:47:57</td>\n",
       "      <td>Location: 141st St. and Malcolm X BlvdSubway: ...</td>\n",
       "      <td>West 141st Street</td>\n",
       "      <td>[prewar, Dogs Allowed, Cats Allowed, LOWRISE, ...</td>\n",
       "      <td>40.8184</td>\n",
       "      <td>-73.9389</td>\n",
       "      <td>[https://photos.renthop.com/2/6821706_bf71ecb1...</td>\n",
       "      <td>1300</td>\n",
       "      <td>111-115 West 141st Street</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100098</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-17 02:16:42</td>\n",
       "      <td>Located in one of Manhattan's most desirable a...</td>\n",
       "      <td>West 58th Street</td>\n",
       "      <td>[Doorman, Elevator, Pre-War, Dishwasher, Dogs ...</td>\n",
       "      <td>40.7649</td>\n",
       "      <td>-73.9763</td>\n",
       "      <td>[https://photos.renthop.com/2/6885742_51e79649...</td>\n",
       "      <td>1980</td>\n",
       "      <td>57 West 58th Street</td>\n",
       "      <td>high</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10010</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-06-29 04:08:35</td>\n",
       "      <td>Prime Location!! This Luxury Chelsea building ...</td>\n",
       "      <td>W 34 St.</td>\n",
       "      <td>[Roof Deck, Doorman, Elevator, Fitness Center,...</td>\n",
       "      <td>40.7530</td>\n",
       "      <td>-73.9959</td>\n",
       "      <td>[https://photos.renthop.com/2/7230670_5757b0e5...</td>\n",
       "      <td>2396</td>\n",
       "      <td>360 W 34 St.</td>\n",
       "      <td>medium</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100107</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-19 06:19:44</td>\n",
       "      <td>Wonderful Upper East Side location! This quiet...</td>\n",
       "      <td>East 82nd Street</td>\n",
       "      <td>[Balcony, Elevator, Garden/Patio, Terrace, Dis...</td>\n",
       "      <td>40.7753</td>\n",
       "      <td>-73.9540</td>\n",
       "      <td>[https://photos.renthop.com/2/6896742_10c69ade...</td>\n",
       "      <td>2400</td>\n",
       "      <td>240 East 82nd Street</td>\n",
       "      <td>medium</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100112</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-29 05:27:33</td>\n",
       "      <td>Modern postwar building located in the heart o...</td>\n",
       "      <td>1 Ave</td>\n",
       "      <td>[Elevator, Loft, Laundry in Building, Dishwash...</td>\n",
       "      <td>40.7739</td>\n",
       "      <td>-73.9511</td>\n",
       "      <td>[https://photos.renthop.com/2/6942606_35305529...</td>\n",
       "      <td>1850</td>\n",
       "      <td>1570 1 Ave</td>\n",
       "      <td>medium</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100117</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-29 04:31:19</td>\n",
       "      <td>Great gut -renovated apartment in charming ele...</td>\n",
       "      <td>W 13 Street</td>\n",
       "      <td>[Elevator, Loft, Laundry in Building, Dishwash...</td>\n",
       "      <td>40.7372</td>\n",
       "      <td>-73.9981</td>\n",
       "      <td>[https://photos.renthop.com/2/6941997_740e97f8...</td>\n",
       "      <td>2650</td>\n",
       "      <td>117 W 13 Street</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100131</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-12 06:10:58</td>\n",
       "      <td>Located in a beautiful and classic pre-war bui...</td>\n",
       "      <td>E 88 St.</td>\n",
       "      <td>[Doorman, Elevator, Laundry in Building, Laund...</td>\n",
       "      <td>40.7817</td>\n",
       "      <td>-73.9573</td>\n",
       "      <td>[https://photos.renthop.com/2/6861960_2521d86d...</td>\n",
       "      <td>3500</td>\n",
       "      <td>60 E 88 St.</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100133</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-02 05:47:14</td>\n",
       "      <td>BRAND NEW JR 1 BEDROOM -- GRANITE KITCHEN -- M...</td>\n",
       "      <td>East 46th Street</td>\n",
       "      <td>[Doorman, Elevator, Dishwasher, Hardwood Floor...</td>\n",
       "      <td>40.7522</td>\n",
       "      <td>-73.9702</td>\n",
       "      <td>[https://photos.renthop.com/2/6816227_c6ece4c4...</td>\n",
       "      <td>2790</td>\n",
       "      <td>300 East 46th Street</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100138</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-26 01:39:25</td>\n",
       "      <td></td>\n",
       "      <td>East 74th Street</td>\n",
       "      <td>[]</td>\n",
       "      <td>40.7699</td>\n",
       "      <td>-73.9565</td>\n",
       "      <td>[]</td>\n",
       "      <td>2700</td>\n",
       "      <td>315 East 74th Street</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100144</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-13 04:53:05</td>\n",
       "      <td>**No Fee**Second Month Free**East 55th Street*...</td>\n",
       "      <td>East 55th Street</td>\n",
       "      <td>[Elevator, Pre-War, Laundry in Building, Hardw...</td>\n",
       "      <td>40.7571</td>\n",
       "      <td>-73.9647</td>\n",
       "      <td>[https://photos.renthop.com/2/6866313_ad871df7...</td>\n",
       "      <td>2290</td>\n",
       "      <td>342 East 55th Street</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100188</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-15 04:27:54</td>\n",
       "      <td>Check Out This Lovely Studio Apartment...</td>\n",
       "      <td>Metropolitan Ave</td>\n",
       "      <td>[]</td>\n",
       "      <td>40.7108</td>\n",
       "      <td>-73.8543</td>\n",
       "      <td>[https://photos.renthop.com/2/6877460_43b613bc...</td>\n",
       "      <td>1400</td>\n",
       "      <td>98-10 Metropolitan Ave</td>\n",
       "      <td>high</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1002</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-06-24 05:04:03</td>\n",
       "      <td>(((Spacious 2 bedroom in the Upper East Side))...</td>\n",
       "      <td>E 61 St.</td>\n",
       "      <td>[]</td>\n",
       "      <td>40.7617</td>\n",
       "      <td>-73.9626</td>\n",
       "      <td>[https://photos.renthop.com/2/7208829_b01dcd64...</td>\n",
       "      <td>2625</td>\n",
       "      <td>311 E 61 St.</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100206</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-06 02:21:52</td>\n",
       "      <td>Loft, High Ceilings, Hardwood, LightHuge Studi...</td>\n",
       "      <td>E 74 Street</td>\n",
       "      <td>[Loft, Hardwood Floors, Cats Allowed]</td>\n",
       "      <td>40.7690</td>\n",
       "      <td>-73.9541</td>\n",
       "      <td>[https://photos.renthop.com/2/6828553_1a5c3cc8...</td>\n",
       "      <td>1850</td>\n",
       "      <td>409 E 74 Street</td>\n",
       "      <td>medium</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100213</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-16 03:19:02</td>\n",
       "      <td></td>\n",
       "      <td>East 60th Street</td>\n",
       "      <td>[Doorman]</td>\n",
       "      <td>40.7604</td>\n",
       "      <td>-73.9617</td>\n",
       "      <td>[https://photos.renthop.com/2/6882553_mb_39be7...</td>\n",
       "      <td>1950</td>\n",
       "      <td>351 East 60th Street</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100245</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-03 01:32:03</td>\n",
       "      <td>Spacious Studio in UES. Available right now!!!...</td>\n",
       "      <td>East 89th Street</td>\n",
       "      <td>[Pre-War, Dogs Allowed, Cats Allowed]</td>\n",
       "      <td>40.7793</td>\n",
       "      <td>-73.9496</td>\n",
       "      <td>[]</td>\n",
       "      <td>1725</td>\n",
       "      <td>310 East 89th Street</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100276</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-20 02:57:19</td>\n",
       "      <td>This luxury studio has an open -space layout w...</td>\n",
       "      <td>E 24 Street</td>\n",
       "      <td>[Roof Deck, Doorman, Loft]</td>\n",
       "      <td>40.7393</td>\n",
       "      <td>-73.9817</td>\n",
       "      <td>[https://photos.renthop.com/2/6899273_9e691805...</td>\n",
       "      <td>2500</td>\n",
       "      <td>215 E 24 Street</td>\n",
       "      <td>medium</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100279</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-20 05:23:29</td>\n",
       "      <td>ULTRA SPACIOUS STUDIO HAS 1BATH, STAINLESS STE...</td>\n",
       "      <td>East 34th Street</td>\n",
       "      <td>[Swimming Pool, Dining Room, Doorman, Elevator...</td>\n",
       "      <td>40.7444</td>\n",
       "      <td>-73.9754</td>\n",
       "      <td>[https://photos.renthop.com/2/6900844_614a3563...</td>\n",
       "      <td>2400</td>\n",
       "      <td>300 East 34th Street</td>\n",
       "      <td>medium</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100286</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-27 14:59:58</td>\n",
       "      <td>This is the newest and best residential buildi...</td>\n",
       "      <td>Financial District</td>\n",
       "      <td>[Common Outdoor Space, Cats Allowed, Dogs Allo...</td>\n",
       "      <td>40.7075</td>\n",
       "      <td>-74.0113</td>\n",
       "      <td>[https://photos.renthop.com/2/6933977_10c4b121...</td>\n",
       "      <td>3090</td>\n",
       "      <td>Financial District</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100297</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-21 05:39:46</td>\n",
       "      <td>Located in the heart of Murray Hill, on 3rd av...</td>\n",
       "      <td>East 39th Street</td>\n",
       "      <td>[Roof Deck, Doorman, Fitness Center, Pre-War, ...</td>\n",
       "      <td>40.7481</td>\n",
       "      <td>-73.9748</td>\n",
       "      <td>[https://photos.renthop.com/2/6907321_90e63904...</td>\n",
       "      <td>2700</td>\n",
       "      <td>222 East 39th Street</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100307</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-17 02:37:29</td>\n",
       "      <td>I have total market coverage in Manhattan with...</td>\n",
       "      <td>Fifth Avenue</td>\n",
       "      <td>[Doorman, Elevator, Dishwasher, Hardwood Floor...</td>\n",
       "      <td>40.7366</td>\n",
       "      <td>-73.9934</td>\n",
       "      <td>[https://photos.renthop.com/2/6886100_23da5df4...</td>\n",
       "      <td>2900</td>\n",
       "      <td>96 Fifth Avenue</td>\n",
       "      <td>medium</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100314</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-16 04:32:58</td>\n",
       "      <td>Fantastic large Studio with new renovations on...</td>\n",
       "      <td>E 49 St.</td>\n",
       "      <td>[Roof Deck, Doorman, Elevator, Fitness Center,...</td>\n",
       "      <td>40.7540</td>\n",
       "      <td>-73.9678</td>\n",
       "      <td>[https://photos.renthop.com/2/6883529_da3b0b64...</td>\n",
       "      <td>2600</td>\n",
       "      <td>333 E 49 St.</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100316</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-22 02:22:03</td>\n",
       "      <td>Top floor spacious alcove studio apartment fea...</td>\n",
       "      <td>West 15th Street</td>\n",
       "      <td>[Doorman, Elevator, Laundry in Unit, Dogs Allo...</td>\n",
       "      <td>40.7382</td>\n",
       "      <td>-73.9965</td>\n",
       "      <td>[https://photos.renthop.com/2/6910087_9b8bbcad...</td>\n",
       "      <td>3995</td>\n",
       "      <td>101 West 15th Street</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10033</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-06-04 03:24:25</td>\n",
       "      <td>Parlor level studio - GREAT DEAL!Fabulous walk...</td>\n",
       "      <td>E 87 Street</td>\n",
       "      <td>[Loft, Laundry in Building, Hardwood Floors]</td>\n",
       "      <td>40.7777</td>\n",
       "      <td>-73.9498</td>\n",
       "      <td>[https://photos.renthop.com/2/7108485_7750aa35...</td>\n",
       "      <td>1800</td>\n",
       "      <td>346 E 87 Street</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100358</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-17 02:43:34</td>\n",
       "      <td>Amazing studio!Perfect sized, perfect priced!&lt;...</td>\n",
       "      <td>First Avenue</td>\n",
       "      <td>[Loft]</td>\n",
       "      <td>40.7242</td>\n",
       "      <td>-73.9878</td>\n",
       "      <td>[https://photos.renthop.com/2/6886196_6c65320d...</td>\n",
       "      <td>1975</td>\n",
       "      <td>41 First Avenue</td>\n",
       "      <td>medium</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100359</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-12 15:41:27</td>\n",
       "      <td>NO FEE!! NO FEE!! NO FEE!!\\r\\rLOOK NO FURTHER,...</td>\n",
       "      <td>E. 10th &amp; 2nd Ave.</td>\n",
       "      <td>[No Fee]</td>\n",
       "      <td>40.7298</td>\n",
       "      <td>-73.9868</td>\n",
       "      <td>[https://photos.renthop.com/2/6862696_8239ad5b...</td>\n",
       "      <td>2750</td>\n",
       "      <td>E. 10th &amp; 2nd Ave.</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10040</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-06-16 08:09:27</td>\n",
       "      <td>APARTMENT: Extremely spacious studio with natu...</td>\n",
       "      <td>East 67th Street</td>\n",
       "      <td>[Elevator, Pre-War, Hardwood Floors]</td>\n",
       "      <td>40.7689</td>\n",
       "      <td>-73.9681</td>\n",
       "      <td>[https://photos.renthop.com/2/7172841_2c3b8b83...</td>\n",
       "      <td>2850</td>\n",
       "      <td>17 East 67th Street</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100400</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-12 06:20:58</td>\n",
       "      <td>Laundry in Unit, Dishwasher, Microwave, Hardwo...</td>\n",
       "      <td>Water Street</td>\n",
       "      <td>[Roof Deck, Doorman, Elevator, Fitness Center,...</td>\n",
       "      <td>40.7032</td>\n",
       "      <td>-73.9914</td>\n",
       "      <td>[https://photos.renthop.com/2/6862351_2db08784...</td>\n",
       "      <td>3035</td>\n",
       "      <td>60 Water Street</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>...</th>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>99645</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-08 02:17:03</td>\n",
       "      <td>\"This gorgeous apartment is priced perfectly a...</td>\n",
       "      <td>30 Park Terrace East</td>\n",
       "      <td>[]</td>\n",
       "      <td>40.8698</td>\n",
       "      <td>-73.9170</td>\n",
       "      <td>[https://photos.renthop.com/2/6841958_86570e60...</td>\n",
       "      <td>1500</td>\n",
       "      <td>30 Park Terrace East</td>\n",
       "      <td>high</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>99664</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-11 11:43:50</td>\n",
       "      <td>Great Price!!!\\t\\r\\rRenovated studio apartment...</td>\n",
       "      <td>East 3rd Street</td>\n",
       "      <td>[]</td>\n",
       "      <td>40.7246</td>\n",
       "      <td>-73.9875</td>\n",
       "      <td>[https://photos.renthop.com/2/6856510_989a2ad3...</td>\n",
       "      <td>2250</td>\n",
       "      <td>78 East 3rd Street</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>99668</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-06 02:28:34</td>\n",
       "      <td>The perfect place to call home! Fantastic loca...</td>\n",
       "      <td>E 78th Street</td>\n",
       "      <td>[Elevator, Laundry in Building, Dishwasher, Ha...</td>\n",
       "      <td>40.7716</td>\n",
       "      <td>-73.9529</td>\n",
       "      <td>[https://photos.renthop.com/2/6828760_edff147e...</td>\n",
       "      <td>2075</td>\n",
       "      <td>399 E 78th Street</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>99675</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-16 02:23:19</td>\n",
       "      <td>Nice building on prime Upper West Side locatio...</td>\n",
       "      <td>West 76th Street</td>\n",
       "      <td>[Doorman, Elevator, Loft, Dishwasher, Hardwood...</td>\n",
       "      <td>40.7820</td>\n",
       "      <td>-73.9822</td>\n",
       "      <td>[https://photos.renthop.com/2/6881701_039f374b...</td>\n",
       "      <td>2400</td>\n",
       "      <td>252 West 76th Street</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>99676</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-19 05:57:04</td>\n",
       "      <td>Super spacious studio in Upper East Side locat...</td>\n",
       "      <td>East 84th Street</td>\n",
       "      <td>[Cats Allowed, Private Outdoor Space, No Fee, ...</td>\n",
       "      <td>40.7769</td>\n",
       "      <td>-73.9531</td>\n",
       "      <td>[https://photos.renthop.com/2/6896036_05927c42...</td>\n",
       "      <td>1900</td>\n",
       "      <td>245 East 84th Street</td>\n",
       "      <td>high</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>99684</th>\n",
       "      <td>2.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-19 02:47:26</td>\n",
       "      <td>Welcome to your new river home in the heart of...</td>\n",
       "      <td>Greenwich Street</td>\n",
       "      <td>[Roof Deck, Dining Room, Doorman, Elevator, Fi...</td>\n",
       "      <td>40.7324</td>\n",
       "      <td>-74.0081</td>\n",
       "      <td>[https://photos.renthop.com/2/6892813_987fb7bb...</td>\n",
       "      <td>6800</td>\n",
       "      <td>666 Greenwich Street</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>99700</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-11 02:22:11</td>\n",
       "      <td>Spacious studio for rent. on first avenueand s...</td>\n",
       "      <td>First Avenue</td>\n",
       "      <td>[Elevator, Loft]</td>\n",
       "      <td>40.7243</td>\n",
       "      <td>-73.9881</td>\n",
       "      <td>[https://photos.renthop.com/2/6854633_467934ce...</td>\n",
       "      <td>1875</td>\n",
       "      <td>39 First Avenue</td>\n",
       "      <td>high</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>99712</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-23 04:57:32</td>\n",
       "      <td></td>\n",
       "      <td>West 45th Street</td>\n",
       "      <td>[Doorman, Elevator, Cats Allowed, Dogs Allowed...</td>\n",
       "      <td>40.7621</td>\n",
       "      <td>-73.9956</td>\n",
       "      <td>[]</td>\n",
       "      <td>3200</td>\n",
       "      <td>550 West 45th Street</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>99715</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-14 06:06:41</td>\n",
       "      <td>This studio must be seen. It is absolutely bea...</td>\n",
       "      <td>East 46th Street</td>\n",
       "      <td>[Roof Deck, Doorman, Elevator, Laundry in Buil...</td>\n",
       "      <td>40.7516</td>\n",
       "      <td>-73.9690</td>\n",
       "      <td>[https://photos.renthop.com/2/6873605_9b118f41...</td>\n",
       "      <td>2600</td>\n",
       "      <td>330 East 46th Street</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>99716</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-27 05:30:57</td>\n",
       "      <td>Super Spacious, Sun-filled studio just one fli...</td>\n",
       "      <td>East 83rd Street</td>\n",
       "      <td>[]</td>\n",
       "      <td>40.7747</td>\n",
       "      <td>-73.9497</td>\n",
       "      <td>[https://photos.renthop.com/2/6931768_4074eedc...</td>\n",
       "      <td>1800</td>\n",
       "      <td>427 East 83rd Street</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>99722</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-20 03:04:20</td>\n",
       "      <td>Recently renovated studio with lots of natural...</td>\n",
       "      <td>East 78th Street</td>\n",
       "      <td>[Pre-War, Laundry in Building, Hardwood Floors]</td>\n",
       "      <td>40.7705</td>\n",
       "      <td>-73.9503</td>\n",
       "      <td>[https://photos.renthop.com/2/6899414_015399b1...</td>\n",
       "      <td>1755</td>\n",
       "      <td>503 East 78th Street</td>\n",
       "      <td>medium</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>99736</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-18 04:43:05</td>\n",
       "      <td>Lovely pre-war elevator building just off of c...</td>\n",
       "      <td>W 72nd St</td>\n",
       "      <td>[No Fee, Elevator]</td>\n",
       "      <td>40.7775</td>\n",
       "      <td>-73.9784</td>\n",
       "      <td>[https://photos.renthop.com/2/6890528_0c723af2...</td>\n",
       "      <td>2050</td>\n",
       "      <td>53 W 72nd St</td>\n",
       "      <td>high</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>99741</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-22 01:22:27</td>\n",
       "      <td>**Hidden Gem in the heart of Upper West Side**...</td>\n",
       "      <td>West 72nd Street</td>\n",
       "      <td>[No Fee, Dogs Allowed, Cats Allowed]</td>\n",
       "      <td>40.7775</td>\n",
       "      <td>-73.9784</td>\n",
       "      <td>[https://photos.renthop.com/2/6909318_8ae16d5e...</td>\n",
       "      <td>2050</td>\n",
       "      <td>53 West 72nd Street</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>99742</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-13 01:10:29</td>\n",
       "      <td>Location, location, location! Spacious studio ...</td>\n",
       "      <td>West 23rd Street</td>\n",
       "      <td>[Doorman, Pre-War, Dogs Allowed, Cats Allowed]</td>\n",
       "      <td>40.7441</td>\n",
       "      <td>-73.9964</td>\n",
       "      <td>[https://photos.renthop.com/2/6862931_b1393e82...</td>\n",
       "      <td>2475</td>\n",
       "      <td>208 West 23rd Street</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>99754</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-28 03:20:43</td>\n",
       "      <td>This luxury apartment wont last long. With the...</td>\n",
       "      <td>Maiden Lane</td>\n",
       "      <td>[Roof Deck, Doorman, Elevator, Fitness Center,...</td>\n",
       "      <td>40.7067</td>\n",
       "      <td>-74.0072</td>\n",
       "      <td>[https://photos.renthop.com/2/6936430_eae5d2de...</td>\n",
       "      <td>2300</td>\n",
       "      <td>100 Maiden Lane</td>\n",
       "      <td>medium</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>99777</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-23 01:33:37</td>\n",
       "      <td>ELEVATOR &amp; LAUNDRY IN THE BUILDING 100'S*****U...</td>\n",
       "      <td>East 108th Street</td>\n",
       "      <td>[Pre-War, Dogs Allowed, Cats Allowed]</td>\n",
       "      <td>40.7917</td>\n",
       "      <td>-73.9403</td>\n",
       "      <td>[https://photos.renthop.com/2/6914509_fe7444fe...</td>\n",
       "      <td>1550</td>\n",
       "      <td>315 East 108th Street</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9979</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-06-02 03:34:53</td>\n",
       "      <td>A fabulous Penthouse apartment in the heart of...</td>\n",
       "      <td>Waverly Place</td>\n",
       "      <td>[Dining Room, Doorman, Elevator, Furnished, Lo...</td>\n",
       "      <td>40.7301</td>\n",
       "      <td>-73.9942</td>\n",
       "      <td>[https://photos.renthop.com/2/7097078_c41ebdd0...</td>\n",
       "      <td>2475</td>\n",
       "      <td>11 Waverly Place</td>\n",
       "      <td>medium</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>99802</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-09 05:55:16</td>\n",
       "      <td>Raphael at Bold for private kagglemanager@rent...</td>\n",
       "      <td>West 14th Street</td>\n",
       "      <td>[Pre-War, Dishwasher, Hardwood Floors, No Fee]</td>\n",
       "      <td>40.7399</td>\n",
       "      <td>-74.0036</td>\n",
       "      <td>[https://photos.renthop.com/2/6850088_9e3067d2...</td>\n",
       "      <td>2300</td>\n",
       "      <td>316 West 14th Street</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>99810</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-21 06:06:08</td>\n",
       "      <td>As soon as you walk through the lobby of this ...</td>\n",
       "      <td>West Street</td>\n",
       "      <td>[Roof Deck, Doorman, Elevator, Pre-War, Laundr...</td>\n",
       "      <td>40.7056</td>\n",
       "      <td>-74.0162</td>\n",
       "      <td>[https://photos.renthop.com/2/6907696_999b1a0a...</td>\n",
       "      <td>2400</td>\n",
       "      <td>1 West Street</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>99811</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-15 02:37:57</td>\n",
       "      <td>PRIME EAST VILLAGE LOCATIONAMAZING STUDIO IN A...</td>\n",
       "      <td>2nd Ave.</td>\n",
       "      <td>[Doorman, Elevator, Laundry in Building, Hardw...</td>\n",
       "      <td>40.7301</td>\n",
       "      <td>-73.9865</td>\n",
       "      <td>[https://photos.renthop.com/2/6875691_ee6763eb...</td>\n",
       "      <td>2825</td>\n",
       "      <td>166 2nd Ave.</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>99832</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-21 01:20:32</td>\n",
       "      <td>Located between First and Second Avenue, this ...</td>\n",
       "      <td>East 81st Street</td>\n",
       "      <td>[Pre-War, Dogs Allowed, Cats Allowed]</td>\n",
       "      <td>40.7744</td>\n",
       "      <td>-73.9530</td>\n",
       "      <td>[https://photos.renthop.com/2/6903438_5a9cebbd...</td>\n",
       "      <td>2075</td>\n",
       "      <td>315 East 81st Street</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>99839</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-30 02:51:49</td>\n",
       "      <td>Luxury Upper West Side building located in the...</td>\n",
       "      <td>W 91 St.</td>\n",
       "      <td>[Doorman, Elevator, Fitness Center, Pre-War, L...</td>\n",
       "      <td>40.7911</td>\n",
       "      <td>-73.9737</td>\n",
       "      <td>[https://photos.renthop.com/2/6945666_ae71b976...</td>\n",
       "      <td>2300</td>\n",
       "      <td>212 W 91 St.</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>99868</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-28 05:32:07</td>\n",
       "      <td>big studio apartment,very bright and nice big ...</td>\n",
       "      <td>West 83rd Street</td>\n",
       "      <td>[Elevator]</td>\n",
       "      <td>40.7873</td>\n",
       "      <td>-73.9807</td>\n",
       "      <td>[https://photos.renthop.com/2/6937811_d535760f...</td>\n",
       "      <td>2300</td>\n",
       "      <td>328 West 83rd Street</td>\n",
       "      <td>medium</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>99880</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-08 01:14:27</td>\n",
       "      <td>Easy Access and Easy approval. Feel free to ca...</td>\n",
       "      <td>West 56th Street</td>\n",
       "      <td>[Dogs Allowed, Cats Allowed]</td>\n",
       "      <td>40.7632</td>\n",
       "      <td>-73.9771</td>\n",
       "      <td>[]</td>\n",
       "      <td>2250</td>\n",
       "      <td>60 West 56th Street</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>99899</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-23 05:27:38</td>\n",
       "      <td>For the best apartment match up, kindly email ...</td>\n",
       "      <td>Grove Street</td>\n",
       "      <td>[Elevator, Hardwood Floors]</td>\n",
       "      <td>40.7329</td>\n",
       "      <td>-74.0046</td>\n",
       "      <td>[https://photos.renthop.com/2/6916629_ff6fa1ff...</td>\n",
       "      <td>2900</td>\n",
       "      <td>35 Grove Street</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>99919</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-08 05:51:57</td>\n",
       "      <td>(((((IMPORTANT NOTICE))))) If you are planning...</td>\n",
       "      <td>East 78th Street</td>\n",
       "      <td>[Elevator, Laundry in Building, Laundry in Uni...</td>\n",
       "      <td>40.7721</td>\n",
       "      <td>-73.9539</td>\n",
       "      <td>[https://photos.renthop.com/2/6844805_b2a3a213...</td>\n",
       "      <td>2100</td>\n",
       "      <td>353 East 78th Street</td>\n",
       "      <td>medium</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>99937</th>\n",
       "      <td>1.5</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-14 05:39:33</td>\n",
       "      <td>Bedroom on top, Living room on bottom&lt;br /&gt;&lt;br...</td>\n",
       "      <td>York Avenue</td>\n",
       "      <td>[Pre-War, Laundry in Building, Dishwasher, Har...</td>\n",
       "      <td>40.7769</td>\n",
       "      <td>-73.9467</td>\n",
       "      <td>[https://photos.renthop.com/2/6873182_babdece5...</td>\n",
       "      <td>2650</td>\n",
       "      <td>1661 York Avenue</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>99964</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-29 05:20:49</td>\n",
       "      <td>77TH ST! FULLY GUT RENOV STUDIO! HI CEIL! XPSD...</td>\n",
       "      <td>E 77 St</td>\n",
       "      <td>[Loft, Multi-Level, Dishwasher, Hardwood Floors]</td>\n",
       "      <td>40.7708</td>\n",
       "      <td>-73.9525</td>\n",
       "      <td>[https://photos.renthop.com/2/6942494_edcfce0d...</td>\n",
       "      <td>2000</td>\n",
       "      <td>425 E 77 St</td>\n",
       "      <td>medium</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>99980</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-27 12:52:12</td>\n",
       "      <td>Incredibly sunny and spacious studio apartment...</td>\n",
       "      <td>John Street</td>\n",
       "      <td>[Common Outdoor Space, Cats Allowed, Dogs Allo...</td>\n",
       "      <td>40.7090</td>\n",
       "      <td>-74.0105</td>\n",
       "      <td>[https://photos.renthop.com/2/6933865_9bdcae03...</td>\n",
       "      <td>2500</td>\n",
       "      <td>116 John Street</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>99993</th>\n",
       "      <td>1.0</td>\n",
       "      <td>0</td>\n",
       "      <td>2016-04-08 02:13:33</td>\n",
       "      <td>Stylishly sleek studio apartment with unsurpas...</td>\n",
       "      <td>Wall Street</td>\n",
       "      <td>[Doorman, Elevator, Pre-War, Dogs Allowed, Cat...</td>\n",
       "      <td>40.7066</td>\n",
       "      <td>-74.0101</td>\n",
       "      <td>[https://photos.renthop.com/2/6841891_124c9c44...</td>\n",
       "      <td>3350</td>\n",
       "      <td>37 Wall Street</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>9474 rows × 12 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "        bathrooms  bedrooms              created  \\\n",
       "100030        1.0         0  2016-04-14 01:10:30   \n",
       "100051        1.0         0  2016-04-18 02:36:00   \n",
       "100083        1.0         0  2016-04-21 02:17:28   \n",
       "100096        1.0         0  2016-04-04 03:47:57   \n",
       "100098        1.0         0  2016-04-17 02:16:42   \n",
       "10010         1.0         0  2016-06-29 04:08:35   \n",
       "100107        1.0         0  2016-04-19 06:19:44   \n",
       "100112        1.0         0  2016-04-29 05:27:33   \n",
       "100117        1.0         0  2016-04-29 04:31:19   \n",
       "100131        1.0         0  2016-04-12 06:10:58   \n",
       "100133        1.0         0  2016-04-02 05:47:14   \n",
       "100138        1.0         0  2016-04-26 01:39:25   \n",
       "100144        1.0         0  2016-04-13 04:53:05   \n",
       "100188        1.0         0  2016-04-15 04:27:54   \n",
       "1002          1.0         0  2016-06-24 05:04:03   \n",
       "100206        1.0         0  2016-04-06 02:21:52   \n",
       "100213        1.0         0  2016-04-16 03:19:02   \n",
       "100245        1.0         0  2016-04-03 01:32:03   \n",
       "100276        1.0         0  2016-04-20 02:57:19   \n",
       "100279        1.0         0  2016-04-20 05:23:29   \n",
       "100286        1.0         0  2016-04-27 14:59:58   \n",
       "100297        1.0         0  2016-04-21 05:39:46   \n",
       "100307        1.0         0  2016-04-17 02:37:29   \n",
       "100314        1.0         0  2016-04-16 04:32:58   \n",
       "100316        1.0         0  2016-04-22 02:22:03   \n",
       "10033         1.0         0  2016-06-04 03:24:25   \n",
       "100358        1.0         0  2016-04-17 02:43:34   \n",
       "100359        1.0         0  2016-04-12 15:41:27   \n",
       "10040         1.0         0  2016-06-16 08:09:27   \n",
       "100400        1.0         0  2016-04-12 06:20:58   \n",
       "...           ...       ...                  ...   \n",
       "99645         1.0         0  2016-04-08 02:17:03   \n",
       "99664         1.0         0  2016-04-11 11:43:50   \n",
       "99668         1.0         0  2016-04-06 02:28:34   \n",
       "99675         1.0         0  2016-04-16 02:23:19   \n",
       "99676         1.0         0  2016-04-19 05:57:04   \n",
       "99684         2.0         0  2016-04-19 02:47:26   \n",
       "99700         1.0         0  2016-04-11 02:22:11   \n",
       "99712         1.0         0  2016-04-23 04:57:32   \n",
       "99715         1.0         0  2016-04-14 06:06:41   \n",
       "99716         1.0         0  2016-04-27 05:30:57   \n",
       "99722         1.0         0  2016-04-20 03:04:20   \n",
       "99736         1.0         0  2016-04-18 04:43:05   \n",
       "99741         1.0         0  2016-04-22 01:22:27   \n",
       "99742         1.0         0  2016-04-13 01:10:29   \n",
       "99754         1.0         0  2016-04-28 03:20:43   \n",
       "99777         1.0         0  2016-04-23 01:33:37   \n",
       "9979          1.0         0  2016-06-02 03:34:53   \n",
       "99802         1.0         0  2016-04-09 05:55:16   \n",
       "99810         1.0         0  2016-04-21 06:06:08   \n",
       "99811         1.0         0  2016-04-15 02:37:57   \n",
       "99832         1.0         0  2016-04-21 01:20:32   \n",
       "99839         1.0         0  2016-04-30 02:51:49   \n",
       "99868         1.0         0  2016-04-28 05:32:07   \n",
       "99880         1.0         0  2016-04-08 01:14:27   \n",
       "99899         1.0         0  2016-04-23 05:27:38   \n",
       "99919         1.0         0  2016-04-08 05:51:57   \n",
       "99937         1.5         0  2016-04-14 05:39:33   \n",
       "99964         1.0         0  2016-04-29 05:20:49   \n",
       "99980         1.0         0  2016-04-27 12:52:12   \n",
       "99993         1.0         0  2016-04-08 02:13:33   \n",
       "\n",
       "                                              description  \\\n",
       "100030  New to the market! Spacious studio located in ...   \n",
       "100051  Stunning  full renovated studio unit. High cei...   \n",
       "100083  Enjoy the Upper West Side life-style!  This ap...   \n",
       "100096  Location: 141st St. and Malcolm X BlvdSubway: ...   \n",
       "100098  Located in one of Manhattan's most desirable a...   \n",
       "10010   Prime Location!! This Luxury Chelsea building ...   \n",
       "100107  Wonderful Upper East Side location! This quiet...   \n",
       "100112  Modern postwar building located in the heart o...   \n",
       "100117  Great gut -renovated apartment in charming ele...   \n",
       "100131  Located in a beautiful and classic pre-war bui...   \n",
       "100133  BRAND NEW JR 1 BEDROOM -- GRANITE KITCHEN -- M...   \n",
       "100138                                                      \n",
       "100144  **No Fee**Second Month Free**East 55th Street*...   \n",
       "100188          Check Out This Lovely Studio Apartment...   \n",
       "1002    (((Spacious 2 bedroom in the Upper East Side))...   \n",
       "100206  Loft, High Ceilings, Hardwood, LightHuge Studi...   \n",
       "100213                                                      \n",
       "100245  Spacious Studio in UES. Available right now!!!...   \n",
       "100276  This luxury studio has an open -space layout w...   \n",
       "100279  ULTRA SPACIOUS STUDIO HAS 1BATH, STAINLESS STE...   \n",
       "100286  This is the newest and best residential buildi...   \n",
       "100297  Located in the heart of Murray Hill, on 3rd av...   \n",
       "100307  I have total market coverage in Manhattan with...   \n",
       "100314  Fantastic large Studio with new renovations on...   \n",
       "100316  Top floor spacious alcove studio apartment fea...   \n",
       "10033   Parlor level studio - GREAT DEAL!Fabulous walk...   \n",
       "100358  Amazing studio!Perfect sized, perfect priced!<...   \n",
       "100359  NO FEE!! NO FEE!! NO FEE!!\\r\\rLOOK NO FURTHER,...   \n",
       "10040   APARTMENT: Extremely spacious studio with natu...   \n",
       "100400  Laundry in Unit, Dishwasher, Microwave, Hardwo...   \n",
       "...                                                   ...   \n",
       "99645   \"This gorgeous apartment is priced perfectly a...   \n",
       "99664   Great Price!!!\\t\\r\\rRenovated studio apartment...   \n",
       "99668   The perfect place to call home! Fantastic loca...   \n",
       "99675   Nice building on prime Upper West Side locatio...   \n",
       "99676   Super spacious studio in Upper East Side locat...   \n",
       "99684   Welcome to your new river home in the heart of...   \n",
       "99700   Spacious studio for rent. on first avenueand s...   \n",
       "99712                                                       \n",
       "99715   This studio must be seen. It is absolutely bea...   \n",
       "99716   Super Spacious, Sun-filled studio just one fli...   \n",
       "99722   Recently renovated studio with lots of natural...   \n",
       "99736   Lovely pre-war elevator building just off of c...   \n",
       "99741   **Hidden Gem in the heart of Upper West Side**...   \n",
       "99742   Location, location, location! Spacious studio ...   \n",
       "99754   This luxury apartment wont last long. With the...   \n",
       "99777   ELEVATOR & LAUNDRY IN THE BUILDING 100'S*****U...   \n",
       "9979    A fabulous Penthouse apartment in the heart of...   \n",
       "99802   Raphael at Bold for private kagglemanager@rent...   \n",
       "99810   As soon as you walk through the lobby of this ...   \n",
       "99811   PRIME EAST VILLAGE LOCATIONAMAZING STUDIO IN A...   \n",
       "99832   Located between First and Second Avenue, this ...   \n",
       "99839   Luxury Upper West Side building located in the...   \n",
       "99868   big studio apartment,very bright and nice big ...   \n",
       "99880   Easy Access and Easy approval. Feel free to ca...   \n",
       "99899   For the best apartment match up, kindly email ...   \n",
       "99919   (((((IMPORTANT NOTICE))))) If you are planning...   \n",
       "99937   Bedroom on top, Living room on bottom<br /><br...   \n",
       "99964   77TH ST! FULLY GUT RENOV STUDIO! HI CEIL! XPSD...   \n",
       "99980   Incredibly sunny and spacious studio apartment...   \n",
       "99993   Stylishly sleek studio apartment with unsurpas...   \n",
       "\n",
       "              display_address  \\\n",
       "100030            York Avenue   \n",
       "100051       East 34th Street   \n",
       "100083   250 West 88th Street   \n",
       "100096      West 141st Street   \n",
       "100098       West 58th Street   \n",
       "10010                W 34 St.   \n",
       "100107       East 82nd Street   \n",
       "100112                  1 Ave   \n",
       "100117            W 13 Street   \n",
       "100131               E 88 St.   \n",
       "100133       East 46th Street   \n",
       "100138       East 74th Street   \n",
       "100144       East 55th Street   \n",
       "100188       Metropolitan Ave   \n",
       "1002                 E 61 St.   \n",
       "100206            E 74 Street   \n",
       "100213       East 60th Street   \n",
       "100245       East 89th Street   \n",
       "100276            E 24 Street   \n",
       "100279       East 34th Street   \n",
       "100286    Financial District    \n",
       "100297       East 39th Street   \n",
       "100307           Fifth Avenue   \n",
       "100314               E 49 St.   \n",
       "100316       West 15th Street   \n",
       "10033             E 87 Street   \n",
       "100358           First Avenue   \n",
       "100359    E. 10th & 2nd Ave.    \n",
       "10040        East 67th Street   \n",
       "100400           Water Street   \n",
       "...                       ...   \n",
       "99645   30 Park Terrace East    \n",
       "99664         East 3rd Street   \n",
       "99668           E 78th Street   \n",
       "99675        West 76th Street   \n",
       "99676        East 84th Street   \n",
       "99684        Greenwich Street   \n",
       "99700            First Avenue   \n",
       "99712        West 45th Street   \n",
       "99715        East 46th Street   \n",
       "99716        East 83rd Street   \n",
       "99722        East 78th Street   \n",
       "99736               W 72nd St   \n",
       "99741        West 72nd Street   \n",
       "99742        West 23rd Street   \n",
       "99754             Maiden Lane   \n",
       "99777       East 108th Street   \n",
       "9979            Waverly Place   \n",
       "99802        West 14th Street   \n",
       "99810             West Street   \n",
       "99811                2nd Ave.   \n",
       "99832        East 81st Street   \n",
       "99839                W 91 St.   \n",
       "99868        West 83rd Street   \n",
       "99880        West 56th Street   \n",
       "99899            Grove Street   \n",
       "99919        East 78th Street   \n",
       "99937             York Avenue   \n",
       "99964                 E 77 St   \n",
       "99980             John Street   \n",
       "99993             Wall Street   \n",
       "\n",
       "                                                 features  latitude  \\\n",
       "100030                                                 []   40.7769   \n",
       "100051  [Doorman, Elevator, Fitness Center, Laundry in...   40.7439   \n",
       "100083  [Doorman, Elevator, Pre-War, Exclusive, Dogs A...   40.7897   \n",
       "100096  [prewar, Dogs Allowed, Cats Allowed, LOWRISE, ...   40.8184   \n",
       "100098  [Doorman, Elevator, Pre-War, Dishwasher, Dogs ...   40.7649   \n",
       "10010   [Roof Deck, Doorman, Elevator, Fitness Center,...   40.7530   \n",
       "100107  [Balcony, Elevator, Garden/Patio, Terrace, Dis...   40.7753   \n",
       "100112  [Elevator, Loft, Laundry in Building, Dishwash...   40.7739   \n",
       "100117  [Elevator, Loft, Laundry in Building, Dishwash...   40.7372   \n",
       "100131  [Doorman, Elevator, Laundry in Building, Laund...   40.7817   \n",
       "100133  [Doorman, Elevator, Dishwasher, Hardwood Floor...   40.7522   \n",
       "100138                                                 []   40.7699   \n",
       "100144  [Elevator, Pre-War, Laundry in Building, Hardw...   40.7571   \n",
       "100188                                                 []   40.7108   \n",
       "1002                                                   []   40.7617   \n",
       "100206              [Loft, Hardwood Floors, Cats Allowed]   40.7690   \n",
       "100213                                          [Doorman]   40.7604   \n",
       "100245              [Pre-War, Dogs Allowed, Cats Allowed]   40.7793   \n",
       "100276                         [Roof Deck, Doorman, Loft]   40.7393   \n",
       "100279  [Swimming Pool, Dining Room, Doorman, Elevator...   40.7444   \n",
       "100286  [Common Outdoor Space, Cats Allowed, Dogs Allo...   40.7075   \n",
       "100297  [Roof Deck, Doorman, Fitness Center, Pre-War, ...   40.7481   \n",
       "100307  [Doorman, Elevator, Dishwasher, Hardwood Floor...   40.7366   \n",
       "100314  [Roof Deck, Doorman, Elevator, Fitness Center,...   40.7540   \n",
       "100316  [Doorman, Elevator, Laundry in Unit, Dogs Allo...   40.7382   \n",
       "10033        [Loft, Laundry in Building, Hardwood Floors]   40.7777   \n",
       "100358                                             [Loft]   40.7242   \n",
       "100359                                           [No Fee]   40.7298   \n",
       "10040                [Elevator, Pre-War, Hardwood Floors]   40.7689   \n",
       "100400  [Roof Deck, Doorman, Elevator, Fitness Center,...   40.7032   \n",
       "...                                                   ...       ...   \n",
       "99645                                                  []   40.8698   \n",
       "99664                                                  []   40.7246   \n",
       "99668   [Elevator, Laundry in Building, Dishwasher, Ha...   40.7716   \n",
       "99675   [Doorman, Elevator, Loft, Dishwasher, Hardwood...   40.7820   \n",
       "99676   [Cats Allowed, Private Outdoor Space, No Fee, ...   40.7769   \n",
       "99684   [Roof Deck, Dining Room, Doorman, Elevator, Fi...   40.7324   \n",
       "99700                                    [Elevator, Loft]   40.7243   \n",
       "99712   [Doorman, Elevator, Cats Allowed, Dogs Allowed...   40.7621   \n",
       "99715   [Roof Deck, Doorman, Elevator, Laundry in Buil...   40.7516   \n",
       "99716                                                  []   40.7747   \n",
       "99722     [Pre-War, Laundry in Building, Hardwood Floors]   40.7705   \n",
       "99736                                  [No Fee, Elevator]   40.7775   \n",
       "99741                [No Fee, Dogs Allowed, Cats Allowed]   40.7775   \n",
       "99742      [Doorman, Pre-War, Dogs Allowed, Cats Allowed]   40.7441   \n",
       "99754   [Roof Deck, Doorman, Elevator, Fitness Center,...   40.7067   \n",
       "99777               [Pre-War, Dogs Allowed, Cats Allowed]   40.7917   \n",
       "9979    [Dining Room, Doorman, Elevator, Furnished, Lo...   40.7301   \n",
       "99802      [Pre-War, Dishwasher, Hardwood Floors, No Fee]   40.7399   \n",
       "99810   [Roof Deck, Doorman, Elevator, Pre-War, Laundr...   40.7056   \n",
       "99811   [Doorman, Elevator, Laundry in Building, Hardw...   40.7301   \n",
       "99832               [Pre-War, Dogs Allowed, Cats Allowed]   40.7744   \n",
       "99839   [Doorman, Elevator, Fitness Center, Pre-War, L...   40.7911   \n",
       "99868                                          [Elevator]   40.7873   \n",
       "99880                        [Dogs Allowed, Cats Allowed]   40.7632   \n",
       "99899                         [Elevator, Hardwood Floors]   40.7329   \n",
       "99919   [Elevator, Laundry in Building, Laundry in Uni...   40.7721   \n",
       "99937   [Pre-War, Laundry in Building, Dishwasher, Har...   40.7769   \n",
       "99964    [Loft, Multi-Level, Dishwasher, Hardwood Floors]   40.7708   \n",
       "99980   [Common Outdoor Space, Cats Allowed, Dogs Allo...   40.7090   \n",
       "99993   [Doorman, Elevator, Pre-War, Dogs Allowed, Cat...   40.7066   \n",
       "\n",
       "        longitude                                             photos  price  \\\n",
       "100030   -73.9467  [https://photos.renthop.com/2/6869199_06b2601f...   1950   \n",
       "100051   -73.9743  [https://photos.renthop.com/2/6889043_a3e1c004...   2350   \n",
       "100083   -73.9760  [https://photos.renthop.com/2/6904268_657c825a...   2750   \n",
       "100096   -73.9389  [https://photos.renthop.com/2/6821706_bf71ecb1...   1300   \n",
       "100098   -73.9763  [https://photos.renthop.com/2/6885742_51e79649...   1980   \n",
       "10010    -73.9959  [https://photos.renthop.com/2/7230670_5757b0e5...   2396   \n",
       "100107   -73.9540  [https://photos.renthop.com/2/6896742_10c69ade...   2400   \n",
       "100112   -73.9511  [https://photos.renthop.com/2/6942606_35305529...   1850   \n",
       "100117   -73.9981  [https://photos.renthop.com/2/6941997_740e97f8...   2650   \n",
       "100131   -73.9573  [https://photos.renthop.com/2/6861960_2521d86d...   3500   \n",
       "100133   -73.9702  [https://photos.renthop.com/2/6816227_c6ece4c4...   2790   \n",
       "100138   -73.9565                                                 []   2700   \n",
       "100144   -73.9647  [https://photos.renthop.com/2/6866313_ad871df7...   2290   \n",
       "100188   -73.8543  [https://photos.renthop.com/2/6877460_43b613bc...   1400   \n",
       "1002     -73.9626  [https://photos.renthop.com/2/7208829_b01dcd64...   2625   \n",
       "100206   -73.9541  [https://photos.renthop.com/2/6828553_1a5c3cc8...   1850   \n",
       "100213   -73.9617  [https://photos.renthop.com/2/6882553_mb_39be7...   1950   \n",
       "100245   -73.9496                                                 []   1725   \n",
       "100276   -73.9817  [https://photos.renthop.com/2/6899273_9e691805...   2500   \n",
       "100279   -73.9754  [https://photos.renthop.com/2/6900844_614a3563...   2400   \n",
       "100286   -74.0113  [https://photos.renthop.com/2/6933977_10c4b121...   3090   \n",
       "100297   -73.9748  [https://photos.renthop.com/2/6907321_90e63904...   2700   \n",
       "100307   -73.9934  [https://photos.renthop.com/2/6886100_23da5df4...   2900   \n",
       "100314   -73.9678  [https://photos.renthop.com/2/6883529_da3b0b64...   2600   \n",
       "100316   -73.9965  [https://photos.renthop.com/2/6910087_9b8bbcad...   3995   \n",
       "10033    -73.9498  [https://photos.renthop.com/2/7108485_7750aa35...   1800   \n",
       "100358   -73.9878  [https://photos.renthop.com/2/6886196_6c65320d...   1975   \n",
       "100359   -73.9868  [https://photos.renthop.com/2/6862696_8239ad5b...   2750   \n",
       "10040    -73.9681  [https://photos.renthop.com/2/7172841_2c3b8b83...   2850   \n",
       "100400   -73.9914  [https://photos.renthop.com/2/6862351_2db08784...   3035   \n",
       "...           ...                                                ...    ...   \n",
       "99645    -73.9170  [https://photos.renthop.com/2/6841958_86570e60...   1500   \n",
       "99664    -73.9875  [https://photos.renthop.com/2/6856510_989a2ad3...   2250   \n",
       "99668    -73.9529  [https://photos.renthop.com/2/6828760_edff147e...   2075   \n",
       "99675    -73.9822  [https://photos.renthop.com/2/6881701_039f374b...   2400   \n",
       "99676    -73.9531  [https://photos.renthop.com/2/6896036_05927c42...   1900   \n",
       "99684    -74.0081  [https://photos.renthop.com/2/6892813_987fb7bb...   6800   \n",
       "99700    -73.9881  [https://photos.renthop.com/2/6854633_467934ce...   1875   \n",
       "99712    -73.9956                                                 []   3200   \n",
       "99715    -73.9690  [https://photos.renthop.com/2/6873605_9b118f41...   2600   \n",
       "99716    -73.9497  [https://photos.renthop.com/2/6931768_4074eedc...   1800   \n",
       "99722    -73.9503  [https://photos.renthop.com/2/6899414_015399b1...   1755   \n",
       "99736    -73.9784  [https://photos.renthop.com/2/6890528_0c723af2...   2050   \n",
       "99741    -73.9784  [https://photos.renthop.com/2/6909318_8ae16d5e...   2050   \n",
       "99742    -73.9964  [https://photos.renthop.com/2/6862931_b1393e82...   2475   \n",
       "99754    -74.0072  [https://photos.renthop.com/2/6936430_eae5d2de...   2300   \n",
       "99777    -73.9403  [https://photos.renthop.com/2/6914509_fe7444fe...   1550   \n",
       "9979     -73.9942  [https://photos.renthop.com/2/7097078_c41ebdd0...   2475   \n",
       "99802    -74.0036  [https://photos.renthop.com/2/6850088_9e3067d2...   2300   \n",
       "99810    -74.0162  [https://photos.renthop.com/2/6907696_999b1a0a...   2400   \n",
       "99811    -73.9865  [https://photos.renthop.com/2/6875691_ee6763eb...   2825   \n",
       "99832    -73.9530  [https://photos.renthop.com/2/6903438_5a9cebbd...   2075   \n",
       "99839    -73.9737  [https://photos.renthop.com/2/6945666_ae71b976...   2300   \n",
       "99868    -73.9807  [https://photos.renthop.com/2/6937811_d535760f...   2300   \n",
       "99880    -73.9771                                                 []   2250   \n",
       "99899    -74.0046  [https://photos.renthop.com/2/6916629_ff6fa1ff...   2900   \n",
       "99919    -73.9539  [https://photos.renthop.com/2/6844805_b2a3a213...   2100   \n",
       "99937    -73.9467  [https://photos.renthop.com/2/6873182_babdece5...   2650   \n",
       "99964    -73.9525  [https://photos.renthop.com/2/6942494_edcfce0d...   2000   \n",
       "99980    -74.0105  [https://photos.renthop.com/2/6933865_9bdcae03...   2500   \n",
       "99993    -74.0101  [https://photos.renthop.com/2/6841891_124c9c44...   3350   \n",
       "\n",
       "                   street_address interest_level  \n",
       "100030           1661 York Avenue            low  \n",
       "100051       340 East 34th Street         medium  \n",
       "100083       250 West 88th Street         medium  \n",
       "100096  111-115 West 141st Street            low  \n",
       "100098        57 West 58th Street           high  \n",
       "10010                360 W 34 St.         medium  \n",
       "100107       240 East 82nd Street         medium  \n",
       "100112                 1570 1 Ave         medium  \n",
       "100117            117 W 13 Street            low  \n",
       "100131                60 E 88 St.            low  \n",
       "100133       300 East 46th Street            low  \n",
       "100138       315 East 74th Street            low  \n",
       "100144       342 East 55th Street            low  \n",
       "100188     98-10 Metropolitan Ave           high  \n",
       "1002                 311 E 61 St.            low  \n",
       "100206            409 E 74 Street         medium  \n",
       "100213       351 East 60th Street            low  \n",
       "100245       310 East 89th Street            low  \n",
       "100276            215 E 24 Street         medium  \n",
       "100279       300 East 34th Street         medium  \n",
       "100286        Financial District             low  \n",
       "100297       222 East 39th Street            low  \n",
       "100307            96 Fifth Avenue         medium  \n",
       "100314               333 E 49 St.            low  \n",
       "100316       101 West 15th Street            low  \n",
       "10033             346 E 87 Street            low  \n",
       "100358            41 First Avenue         medium  \n",
       "100359        E. 10th & 2nd Ave.             low  \n",
       "10040         17 East 67th Street            low  \n",
       "100400            60 Water Street            low  \n",
       "...                           ...            ...  \n",
       "99645       30 Park Terrace East            high  \n",
       "99664          78 East 3rd Street            low  \n",
       "99668           399 E 78th Street            low  \n",
       "99675        252 West 76th Street            low  \n",
       "99676        245 East 84th Street           high  \n",
       "99684        666 Greenwich Street            low  \n",
       "99700             39 First Avenue           high  \n",
       "99712        550 West 45th Street            low  \n",
       "99715        330 East 46th Street            low  \n",
       "99716        427 East 83rd Street            low  \n",
       "99722        503 East 78th Street         medium  \n",
       "99736                53 W 72nd St           high  \n",
       "99741         53 West 72nd Street            low  \n",
       "99742        208 West 23rd Street            low  \n",
       "99754             100 Maiden Lane         medium  \n",
       "99777       315 East 108th Street            low  \n",
       "9979             11 Waverly Place         medium  \n",
       "99802        316 West 14th Street            low  \n",
       "99810               1 West Street            low  \n",
       "99811                166 2nd Ave.            low  \n",
       "99832        315 East 81st Street            low  \n",
       "99839                212 W 91 St.            low  \n",
       "99868        328 West 83rd Street         medium  \n",
       "99880         60 West 56th Street            low  \n",
       "99899             35 Grove Street            low  \n",
       "99919        353 East 78th Street         medium  \n",
       "99937            1661 York Avenue            low  \n",
       "99964                 425 E 77 St         medium  \n",
       "99980             116 John Street            low  \n",
       "99993              37 Wall Street            low  \n",
       "\n",
       "[9474 rows x 12 columns]"
      ]
     },
     "execution_count": 28,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "traindata[traindata[\"bedrooms\"] == 0]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "因为一般情况下浴室数量会小于等于房间数量，而房间数为0的样本，浴室数量基本都为1，因此，对于房间数为0的样本，用浴室数量替换房间数量。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(9474, 12)\n",
      "(39873, 12)\n",
      "(49347, 12)\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\ipykernel_launcher.py:2: SettingWithCopyWarning: \n",
      "A value is trying to be set on a copy of a slice from a DataFrame.\n",
      "Try using .loc[row_indexer,col_indexer] = value instead\n",
      "\n",
      "See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy\n",
      "  \n"
     ]
    }
   ],
   "source": [
    "Tempbedroom0 = traindata[traindata['bedrooms'] == 0]\n",
    "Tempbedroom0['bedrooms'] = Tempbedroom0['bathrooms']\n",
    "Temptraindata = traindata[traindata['bedrooms'] != 0]\n",
    "print(Tempbedroom0.shape)\n",
    "print(Temptraindata.shape)\n",
    "print(traindata.shape)\n",
    "traindata = pd.concat([Tempbedroom0, Temptraindata], ignore_index = False)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\matplotlib\\axes\\_axes.py:6462: UserWarning: The 'normed' kwarg is deprecated, and has been replaced by the 'density' kwarg.\n",
      "  warnings.warn(\"The 'normed' kwarg is deprecated, and has been \"\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = pyplot.figure()\n",
    "sns.distplot(traindata.bedrooms.values, bins=30, kde=False)\n",
    "pyplot.xlabel('Number of Bedrooms', fontsize=10)\n",
    "pyplot.ylabel('Number of occurrences', fontsize=10)\n",
    "pyplot.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### 经纬度 latitude、longitude"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAaoAAAFgCAYAAADq/D0kAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvhp/UCwAAIABJREFUeJzt3Xt8VPWd//H3Z2ZyBQIoCSABCZIQCBQ1EayiIiqXrUvtz9rV0opbW/nZ7Uql/nbr5aFbb7W/Wm+r64LWKhUtW9t6raKtBRS8EFRUykXECxQwQa4xIWQy3/1jTmwSc4VM5pvk9Xw85jEz33POnA9Hk3fOOd/5fs05JwAAfBVKdgEAALSEoAIAeI2gAgB4jaACAHiNoAIAeI2gAgB4jaACAHiNoAIAeI2gAgB4LZLsAtpi+vTp7rnnnkt2GQDQHpbsArqLLnFGtXPnzmSXAABIki4RVACAnougAgB4jaACAHiNoAIAeI2gAgB4jaACAHiNoAIAeI2gAgB4jaACAHiNoAIAeK1LjPWH5i1dX6b5yzdry+5KDe2fqTmnjtDkwpxklwUAHYYzqi5s6foyXfvkWpXtP6B+GSkq239A1z65VkvXlyW7NADoMARVFzZ/+WalhE2ZqRGZxZ9Twqb5yzcnu7SGNr4gPXi2dMe4+PPGF5JdEYAuhKDqwrbsrlRGSrhBW0ZKWFt3VyapoiZsfEF69gpp/ydSev/487NXEFYA2oyg6sKG9s9UVU1tg7aqmlrl9s9MUkVNWHmnFEqVUjMls/hzKDXeDgBtQFB1YXNOHaGaWqfKg1E5F3+uqXWac+qIZJf2d3s+klIyGralZEh7Pk5OPQC6HIKqC5tcmKPrZxYpp0+69lbVKKdPuq6fWeRXr79+R0s1VQ3baqqkfsOSUw+ALofu6V3c5MIcv4KpsZPmxu9JHVT8TKqmSoodjLcDQBtwRoXEKjhLmnGr1GegdGBP/HnGrfF2AGgDzqiQeAVnEUwADhlnVAAAr3FGhYRgaCcAHYWgQoerG9opJWwNhna6XvHOH3f9aaPuf/kDfXawVr1Sw/rupDxddmZBsssG4CmCCh2u/tBOkpSZGlHlwajmL9+st7fu0Z0vblLIpEgo/gXlO1/cJEmEFYAmcY8KHa6loZ3uf/mDIKRCClkoeJbuf/mDJFULwHecUaHDDe2fqbL9Bz4/o5L+PrTTtr27FGn051HIpM8O1uqC+Sv1yge7P2//cl5/PTrnpM4qG4CnOKNCh2tpaKdeqWHFXMP1Y06qjbkGISVJr3ywWxfMX9mJlQPwEUGFDtfS0E7fnZSnmJOisZhiLqZoLKZorWv2sxqHF4Ceh0t/SIjmhnaq6zBRv9ffAdXqYAthBaBnI6h6oGR/x+myMwsa9PA75qo/dtq+AXQ9XPrrYXycvr5Xarj1lQD0WARVD+Pj9PXfnZTX7LLCgb06sRIAPiKoehgfp6+/7MwCzTszXyFr2F44sJeeu3xyUmoC4A/uUfUwLX3HqTPM/fUcvVKzUtUhp7SYqe+usRrQ51/16JyTGJkCQJM4o+phkjl9/cUPfEcv1q5QVcgpJqkq5LRjwDvauf8/NeLHz+iCBa8m9V4ZAD8RVD1Msqavv+tPG/V66PUml+0Y8I5ikj7YWZH0jh0A/GPO+f/9lZKSEldaWprsMnCIlq4vU2TRV3XpMfubXef729N1d9WNGtQ3XTl90vXoJSd2YoVAQljrq6AtOKNCws1fvlknhf7a4jqr+u3RwdpY0jt2APAPQYWE27K7stU/LbelpCg1HOrUjh0AuoaEB5WZhc3sTTN7OnifZ2avmdl7ZrbYzFITXQOSZ+n6Mu2rqml1vaNqatQnPdJpHTsAdB2d0T19rqR1krKC9z+TdLtz7jdm9t+SLpZ0byfUgSYkcjilulEwIiHT3mjLZ0kn7OmnqgG9mbIewBck9IzKzHIlfUXS/cF7kzRF0mPBKg9JOieRNaB5iR5OqW4UjOpoTHOjP5BisaZXjMV06ZWlevSSEwkpAF+Q6Et/d0j6N0l1v6GOlLTHORcN3m+VNKSpDc3sEjMrNbPS8vLyBJfZMyV6OKW6UTCqamq1LHasjt8064thFYvpne+03NECQM+WsEt/Zna2pDLn3Gozm1zX3MSqTfaPd84tkLRAindPT0iRPdyW3ZXql5HSoK0je93VjYJRZ7k7Vtp4rMykcMiUkRLW2/8xrUP2BaD7SuQZ1cmSZprZh5J+o/glvzsk9TOzuoDMlbQtgTWgBUP7Z6qqprZBW0f2uqsbBePzv06CPzdCZpKTUhvPSQ8ATUjYbwrn3JXOuVzn3HBJ50t60Tk3S9JfJH09WG22pCcSVQNalujhlOpGweiVFlHY9PmZVFokpAF9UpWf06dD9gOge0vGn7T/LmmemW1S/J7VL5NQA9Q5wylNLszRXecfpyH9M5U3oJcKB/XRoL7pSgmH6YYOoE0YQgmdoq4b/NbdlcpNwqzCQBIwhFIHYZoPdIrJhTkEE4BDwt1sAIDXCCoAgNcIKgCA1wgqAIDXCCoAgNcIKgCA1wgqAIDXCCoAgNcIKgCA1wgqAIDXCCoAgNcIKgCA1wgqAIDXCCoAgNcIKgCA1wgqAIDXCCoAgNcIKgCA1wgqAIDXCCoAgNcIKgCA1wgqAIDXCCoAgNcIKgCA1wgqAIDXCCoAgNcIKgCA1yLJLiCRlq4v0/zlm7Vld6WG9s/UnFNHaHJhTrLLAgC0Q7c9o1q6vkzXPrlWZfsPqF9Gisr2H9C1T67V0vVlyS4NANAO3Tao5i/frJSwKTM1IrP4c0rYNH/55mSXBgBoh24bVFt2VyojJdygLSMlrK27K5NUEQDgUHTboBraP1NVNbUN2qpqapXbPzNJFQEADkW3Dao5p45QTa1T5cGonIs/19Q6zTl1RLJLAwC0Q7cNqsmFObp+ZpFy+qRrb1WNcvqk6/qZRfT6A4Auplt3T59cmEMwAUAX123PqAAA3QNBBQDwGkEFAPAaQQUA8BpBBQDwGkEFAPAaQQUA8BpBBQDwGkEFAPAaQQUA8BpBBQDwGkEFAPAaQQUA8BpBBQDwGkEFAPAaQQUA8FrCgsrM0s3sdTNbY2ZrzewnQXuemb1mZu+Z2WIzS01UDQCAri+RZ1TVkqY458ZLOlbSdDM7UdLPJN3unMuXtFvSxQmsAQDQxSUsqFxcRfA2JXg4SVMkPRa0PyTpnETVAADo+hJ6j8rMwmb2lqQySS9Iel/SHudcNFhlq6QhzWx7iZmVmllpeXl5IssEAHgsoUHlnKt1zh0rKVfSBEmjm1qtmW0XOOdKnHMl2dnZiSwTAOCxTun155zbI2mppBMl9TOzSLAoV9K2zqgBANA1JbLXX7aZ9QteZ0g6U9I6SX+R9PVgtdmSnkhUDQCAri/S+iqHbLCkh8wsrHgg/o9z7mkz+6uk35jZjZLelPTLBNYAAOjiEhZUzrm3JR3XRPtmxe9XAQDQKkamAAB4jaACAHiNoAIAeI2gAgB4jaACAHiNoAIAeI2gAgB4jaACAHiNoAIAeI2gAgB4jaACAHiNoAIAeI2gAgB4jaACAHiNoAIAeI2gAgB4jaACAHiNoAIAeI2gAgB4jaACAHiNoAIAeI2gAgB4jaACAHgt0paVzMwkzZI0wjl3vZkNkzTIOfd6QqsDgC5s9erVOZFI5H5JY8WJQWtikt6NRqPfLS4uLqu/oE1BJem/gg+ZIul6Sfsl/U7SCR1ZJQB0J5FI5P5BgwaNzs7O3h0KhVyy6/FZLBaz8vLyMTt27Lhf0sz6y9qa8BOdc/8i6YAkOed2S0rt2DIBoNsZm52dvY+Qal0oFHLZ2dl7FT/7bLisjZ9RY2ZhSU6SzCxb8TMsAEDzQoRU2wXH6gu51NagukvSHyTlmNlNkl6WdHPHlQcAQNPaFFTOuUWS/k3STyVtl3SOc+63iSwMALqr4447rrC1da6//vqc/fv3J7QDxsqVKzMWL17ct6V17rrrriMvvPDCYR253/Z+ZosHwcyOqHtIKpP0qKRHJH0StAEA2unNN99c39o68+fPH1hRUdGuoIpGo+2qo7S0NPOZZ55pMah80NpBWC2pNHgul7RR0nvB69WJLQ0AuqfMzMzjJOnpp5/uM2HChFHTp08fkZeXVzRz5sy8WCymG2+8MaesrCzltNNOK5g4cWKBJP3+97/POvbYYwvHjBkzesaMGSP27t0bkqQhQ4aMu+KKKwYXFxePeuCBB/qvXbs27ZRTTskvKioaXVxcPOrNN99Ml6QHHnigf35+ftGoUaPGlJSUjDpw4ID99Kc/Peqpp57qX1hYOOa+++7r31rd27Zti0ybNu2YsWPHjh47duzo559/vldtba2GDBkybufOneG69YYNGzZ2y5YtkabWP5Tj1WL3dOdcniSZ2X9LetI598fg/QxJZx7KDgEAf7du3bqMt956a/Pw4cNriouLC1944YXe11xzTdm99947cNmyZRsHDx4c3b59e+Tmm28evHz58o1ZWVmxq6++etANN9ww8NZbb90uSenp6bHVq1dvkKQvf/nLBQsWLPho3Lhx1S+++GKvSy+9dNirr7668ZZbbhn8/PPPb8zLy6vZuXNnOD093V155ZXbSktLey1cuPDjttQ6Z86cofPmzftk2rRpFe+9917qtGnT8jdv3rx26tSpexYtWtRv7ty5n7744ou9cnNzDw4dOjT6j//4j3lNrd/eY9TW71Gd4Jz7v3VvnHPPmtkN7d0ZAKChcePGfXbMMcfUSFJRUVHl+++//4Wv/ixdurTX+++/nz5hwoRCSaqpqbHi4uKKuuUXXnjhbknau3dv6M033+x93nnnHVO37ODBgyZJJSUlFbNmzRp+7rnn7p41a9buQ6l1xYoVWe+9915G3fuKiorw7t27Q9/85jd3XX/99UfNnTv300WLFh1x7rnn7mpp/fbut61BtdPMrpH0sOJd1L8l6dP27gwA0FBaWtrn3dfD4bCi0ag1Xsc5p0mTJu176qmnPmjqM/r06ROTpNraWvXp0ye6fv36vzZe55FHHvn4xRdf7PXkk0/2PfbYY4veeuutdp/ZOOdUWlq6rnfv3g263J9xxhmfXXzxxWnbtm2LPPfcc/1uuummbS2t315tTbYLJGUr3kX9cUk5QRsAIAF69epVW3cfavLkyZ+Vlpb2fvfdd9Mkaf/+/aG33347rfE2RxxxRCw3N/fgAw880F+SYrGYXnnllQxJWrt2bdqUKVM+u+OOO7b1798/unnz5tSsrKza9nTYmDRp0r6f/exnOXXvV65cmSFJoVBIM2bM2PP9739/6MiRI6sGDRpU29L67dXW7um7nHNznXPHBY+5zrldh7JDAEDrZs+evXPGjBn5EydOLDjqqKOi8+fP//D8888fUVBQMKa4uLjwnXfeSW9qu0cffXTzr371qwGjRo0ak5+fX/S73/2unyRdfvnluQUFBWPy8/OLTjzxxP0nnnhi1YwZM/Zv3Lgxo62dKRYsWLDljTfe6FVQUDDmmGOOKbr77ruz65bNmjVr1xNPPHHE17/+9d1tWb89zLnWz8jM7C8KRqWozzk35VB22l4lJSWutLS0M3YFAB3F1qxZ8+H48eN3JruQrmTNmjUDxo8fP7x+W1vvUV1R73W6pHMlta/DPgAAh6BNQeWca/ydqRVmtiwB9QAAkuDOO+888t577x1Yv+2EE06o+PWvf92mruuJ1Nb5qOqPQhGSVCxpUEIqAgB0urlz5346d+5cL3tzt/XS32rF71GZ4pf8PpB0caKKAgCgTluDarRz7kD9BjP7QtdIAAA6Wlv7z69sou2VjiwEAICmtHhGZWaDJA2RlGFmxyl+6U+SsiRlJrg2AMBhyszMPK6ysvLNZNdxOFq79DdN0kWSciXdVq99v6SrElQTAACfa/HSn3PuIefc6ZIucs6dXu8x0zn3+06qEQB6hGfe3pZ1zj0rCibe/Kdx59yzouCZt7dlddRnx2IxzZkzJzc/P7+ooKDg85EovvWtbw1btGhRX0k666yzjjnvvPOGS9Ltt98+4LLLLjuqo/Z/OFq79Pct59zDkoab2bzGy51ztzWxGQCgnZ55e1vWDc+sG5YSMtcnLRL9tKI65YZn1g2T9PFXvnTUvsP9/IULF/Z75513MtatW7d2+/btkQkTJoyeOnVqxamnnrp/+fLlfWbNmrV3x44dqWVlZU6SVqxY0fuCCy7wYqi81jpT1E1y1VtSn0aP3gmsCwB6lPte+mBQSshceko4ZmZKTwnHUkLm7nvpgw75zupLL73U5xvf+MauSCSioUOHRidOnFjx8ssvZ5511lkVr776au/Vq1enFxQUVA0YMKDmo48+Slm9enWvKVOmVLT+yYnX2sSJ84OXf3LOrai/zMxOTlhVANDDbN9bldYnLdJgaLq0SCi2fW9Vh3wVqLlxXfPy8mr27t0beeqpp/qecsop+3ft2hVZuHBh/169esX69+8f64h9H662dk//zza2AQAOweC+GdXV0ViD38nV0VhocN+M6o74/NNOO23/Y489dkQ0GtW2bdsir7/+eu9TTjnlM0kqLi6umD9/fs6ZZ55ZMXny5Ip77rln0MSJE704m5Jav0f1ZUknScpudI8qS1I4kYUBQE/yvVPydtzwzLphqqkNpUVCsepoLFQTc/a9U/J2dMTnf/vb396zcuXK3qNHjy4yM/eTn/xk67Bhw6KSNGnSpIqXXnopa+zYsdXV1dUH9+7dGz711FP3d8R+O0Jr3dNTFb8XFVH8vlSdfZK+nqiiAKCnCTpMfHzfSx8M2r63Km1w34zq752St+NwO1LUfYcqFApp/vz5WyVtbbzO5ZdfvvPyyy/fKcVnHK6qqvLqe1et3aNaJmmZmT3onPuoPR9sZkMlLVR88NqYpAXOuTuDAW4XSxou6UNJ33DO7W7ucwCgp/jKl47a1xE9/Lqbtt6jqjSzn5vZH83sxbpHK9tEJf3IOTda0omS/sXMxkj6saQ/O+fyJf05eA8AQJPaGlSLJK2XlCfpJ4qfCa1qaQPn3Hbn3BvB6/2S1ik+HNNXJT0UrPaQpHPaXTUAoMdoa1Ad6Zz7paQa59wy59x3FD9LahMzGy7pOEmvSRronNsuxcNMUk4z21xiZqVmVlpeXt7WXQEAupm2BlVN8LzdzL4SDFCb25YNzay3pN9J+qFzrs3XXp1zC5xzJc65kuzs7LZuBgDoZto6H9WNZtZX0o8U//5UlqQftraRmaUoHlKL6o0N+ImZDXbObTezwZLKDqFuAEAP0aYzKufc0865vc65d4NBaYslHdPSNmZmkn4paV2jMQGflDQ7eD1b0hOHUDcAoJNNmDBh1PLlyzMl6bTTThu5c+fOTvk+bVsv/TXlC4PUNnKypG9LmmJmbwWPf5B0i6SzzOw9SWcF7wEAXciyZcs2DRgwoLYz9nU4QWUtLXTOveycM+fcl5xzxwaPPzrnPnXOneGcyw+evRidFwCSbu0fsnTfGQX6ReE43XdGgdb+4bCn+diwYUNqXl5e0T/90z8dnZ+fXzRz5sy8xx9/vM/xxx9fePTRR4/9y1/+krlv377QeeedN3zs2LGjR48ePebhhx/uJ0kVFRV29tlnjygoKBjzla98ZcSBAwc+/70/ZMiQcdu3b49s2LAhNT8/v6iu/dprrx04b968o6T4GdjFF188tKSkZNSIESOKli1bljl16tRjjj766LHtmUKkrfeomtL0CIcAgPZb+4csPXfVMIVTnNKyovqsPEXPXTVM0scq+tphfQl4y5Yt6YsXL95cXFz80Ze+9KXRixYtOrK0tHT9I4880u+mm24aXFhYeOD000/f99vf/vbDnTt3hktKSkbPnDlz32233ZadkZER27hx419fe+21jJNPPnlMe/edmpoaKy0t3XDDDTfknHfeeSNXrVq1LicnJzp8+PBxV1111SeDBg1q9aysxTMqM9tvZvuaeOyX5MWEWgDQLay8e5DCKU4pGTGZSSkZMYVTnFbefdjTfAwZMqR6woQJVeFwWAUFBVVTpkzZFwqFdPzxx1du3bo1benSpVm333774MLCwjGTJk0aVV1dbZs2bUp9+eWXe3/729/+VJImTpxYVVBQUNnefX/ta1/bI0njx4+vGjlyZNXRRx9dk5GR4YYOHVq9efPm1LZ8RmtDKPVpaTkAoIPs+1ua0rIaTPOhSHpM+/522NN8pKamfn4FLBQKKT093UlSOBxWbW2thcNh99hjj20aP378F0Zqj/eLa14kEnGx2N9nAzlw4ECDE6C6fYVCIaWlpTWoIxqNtvzhdeu2ZSUAQIJlDalWtOEveUUPhJQ1pEOm+WjJ6aefvu8Xv/jFwLrAWbFiRYYUH1X94YcfPkKSVq1alb5x48bMxtvm5uZGd+3aFdmxY0e4qqrKlixZ0rej6yOoAMAHJ/1gh2prTDVVITkn1VSFVFtjOukHHTLNR0tuueWWbdFo1AoLC8fk5+cXXXPNNUMk6Yorrij77LPPwgUFBWNuvvnmQePGjfus8bZpaWnuRz/60fYJEyaMPuOMM0aOHDnyQEfXZ83N+uiTkpISV1pamuwyAKA9bM2aNR+OHz9+Z5u3WPuHLK28e5D2/S1NWUOqddIPdhxuR4quZs2aNQPGjx8/vH7b4fT6AwB0pKKv7etpwdQWXPoDAHiNoAIAeI2gAgB4jaACAHiNoAIAeI2gAoBurPGgsXV++MMfHvX444+3OPrQvHnzjrr22msHJq66tqF7OgD0QHfccce2ZNfQVpxRAYAnlny4JOubz3yz4IzfnjHum898s2DJh0sOe5oPSaqtrdX5559/9MiRI4tOPvnk/IqKCjv33HOH/+pXv+ovSYsXL+6bl5dXVFxcPOqiiy4aevrpp4+s23bdunUZEyZMGJWbmzvuxhtvzOmIetqLoAIADyz5cEnWz1f9fNiuA7tSeqf0ju46sCvl56t+Pqwjwurjjz9Ov+yyy8o2bdq0tm/fvrULFy7sX7essrLS5s6de/Szzz773urVqzd8+umnDa60bdq0KX3ZsmUbV61ate7WW289qrq6uk0DyXYkggoAPPDQ2ocGRUIRlx5Jj5mZ0iPpsUgo4h5a+1CHTPNx0kknVUnScccdV/nhhx9+PiL7W2+9lT506NDqwsLCg5J0/vnnN5jMdurUqXsyMjLc4MGDo0cccUTN1q1bO/2WEUEFAB74pPKTtLRwWqx+W1o4LfZJ5ScdOs1HOBx29afXaG281/pTc4TD4TZPzdGRCCoA8MDAzIHV1bXVDX4nV9dWhwZmDkzoNB/jx48/sGXLlrQNGzakStLixYuPSOT+DgVBBQAemF00e0c0FrUD0QMh55wORA+EorGozS6andBpPnr37u1uu+22j6ZPn55fXFw8Kicnp6ZPnz6tTg/fmZjmAwASo93TfCz5cEnWQ2sfGvRJ5SdpAzMHVs8umr1j2vBpCR9Nfe/evaG+ffvGYrGYLrzwwmH5+fkHrrvuurJE77cpTPMBAB6bNnzavs4IpsbuuOOOAY8++uiAmpoaKyoqqpw3b17b59DqBAQVAPRw1113XVmyzqDagntUAACvEVQAkDixWCzW6d25u6rgWMUatxNUAJA475aXl/clrFoXi8WsvLy8r6R3Gy/jHhUAJEg0Gv3ujh077t+xY8dYcWLQmpikd6PR6HcbLyCoACBBiouLyyTNTHYdXR0JDwDwGkEFAPAaQQUA8BpBBQDwGkEFAPAaQQUA8BpBBQDwGkEFAPAaQQUA8BpBBQDwGkEFAPAaQQUA8BpBBQDwGkEFAPAaQQUA8BpBBQDwGkEFAPAaQQUA8BpBBQDwGkEFAPAaQQUA8BpBBQDwGkEFAPBawoLKzB4wszIze7de2xFm9oKZvRc890/U/gEA3UMiz6gelDS9UduPJf3ZOZcv6c/BewAAmpWwoHLOLZe0q1HzVyU9FLx+SNI5ido/AKB76Ox7VAOdc9slKXjOaW5FM7vEzErNrLS8vLzTCgQA+MXbzhTOuQXOuRLnXEl2dnayywEAJElnB9UnZjZYkoLnsk7ePwCgi+nsoHpS0uzg9WxJT3Ty/gEAXUwiu6c/KukVSaPMbKuZXSzpFklnmdl7ks4K3gMA0KxIoj7YOXdBM4vOSNQ+AQDdj7edKQAAkAgqAIDnCCoAgNcIKgCA1wgqAIDXCCoAgNcIKgCA1wgqAIDXCCoAgNcIKgCA1wgqAIDXCCoAgNcIKgCA1wgqAIDXCCoAgNcIKgCA1wgqAIDXCCoAgNcIKgCA1wgqAIDXCCoAgNcIKgCA1wgqAIDXCCoAgNcIKgCA1wgqAIDXCCoAgNcIKgCA1wgqAIDXCCoAgNcIKgCA1wgqAIDXCCoAgNcIKgCA1wgqAIDXCCoAgNcIKgCA1wgqAIDXCCoAgNcIKgCA1wgqAIDXCCoAgNcIKgCA1wgqAIDXCCoAgNcIKgCA1wgqAIDXCCoAgNcIKgCA1wgqAIDXCCoAgNcIKgCA1yLJ2KmZTZd0p6SwpPudc7ckow4AqO+iq27SJeGnlWvl2uqytaD2bD1489XJLqvH6/QzKjMLS7pH0gxJYyRdYGZjOrsOAKjvoqtu0k8iDyrb9miPeinb9ugnkQd10VU3Jbu0Hi8Zl/4mSNrknNvsnDso6TeSvpqEOgDgc5eEn9ZBRVSlNEmmKqXpoCK6JPx0skvr8ZIRVEMkban3fmvQ1oCZXWJmpWZWWl5e3mnFAeiZcq1cVUpt0FalVOUav3+SLRlBZU20uS80OLfAOVfinCvJzs7uhLIA9GRbXbYydLBBW4YOaqvj90+yJSOotkoaWu99rqRtSagDAD63oPZspSqqDFVLcspQtVIV1YLas5NdWo+XjKBaJSnfzPLMLFXS+ZKeTEIdAPC5B2++WtdFL1K566d++kzlrp+ui15Erz8PmHNfuOqW+J2a/YOkOxTvnv6Ac67FbjUlJSWutLS0U2oDgA7S1G0OHIKkfI/KOfdHSX9Mxr4BAF0LI1MAALxGUAEAvEZQAQC8RlABALxGUAEAvEZQAQC8RlABALxGUAEAvEZQAQC8RlABALxGUAEAvJaUQWnby8zKJX3Ujk0GSNqZoHISqSvW3RVrlrpm3dTceTo4zCwBAAAGyUlEQVSi7p3OuekdUUxP1yWCqr3MrNQ5V5LsOtqrK9bdFWuWumbd1Nx5umrd3RWX/gAAXiOoAABe665BtSDZBRyirlh3V6xZ6pp1U3Pn6ap1d0vd8h4VAKD76K5nVACAboKgAgB4rcsHlZmdZ2ZrzSxmZiX12s8ys9Vm9k7wPKXesuKgfZOZ3WVm5kPNwbIrg7o2mNm0eu3Tg7ZNZvbjzqy3KWZ2rJm9amZvmVmpmU0I2i04ppvM7G0zOz7ZtdZnZv8aHMe1Zvb/67U3edx9YmZXmJkzswHBe2+PtZn93MzWB3X9wcz61Vvm7bH27ecMAedcl35IGi1plKSlkkrqtR8n6ajg9VhJf6u37HVJX5Zkkp6VNMOTmsdIWiMpTVKepPclhYPH+5JGSEoN1hmT5OP+fN1xk/QPkpbWe/1scGxPlPRasv8fqVfz6ZL+JCkteJ/T0nFPdr2Nah8qaYniX3wf0AWO9VRJkeD1zyT9zPdj7ePPGY/4o8ufUTnn1jnnNjTR/qZzblvwdq2kdDNLM7PBkrKcc6+4+P+dCyWd04klN1uzpK9K+o1zrto594GkTZImBI9NzrnNzrmDkn4TrJtMTlJW8LqvpLpj/VVJC13cq5L6BcfcB5dKusU5Vy1JzrmyoL254+6T2yX9m+LHvY63x9o597xzLhq8fVVSbvDa52Pt488Z1A0u/bXRuZLeDH5BDZG0td6yrUGbD4ZI2lLvfV1tzbUn0w8l/dzMtki6VdKVQbuPtdYpkHSKmb1mZsvM7ISg3eeaZWYzFb8isKbRIq/rruc7ip/5SX7X7HNtPVok2QW0hZn9SdKgJhZd7Zx7opVtixS/9DC1rqmJ1Tq8j/4h1txcbU39QZHw7xW09G+QdIaky51zvzOzb0j6paQz1UnHtzmt1ByR1F/xy2QnSPofMxuhJNcstVr3Vfr7/78NNmuizYtjXff/uJldLSkqaVHdZk2s78t3ZHyurUfrEkHlnDvzULYzs1xJf5B0oXPu/aB5q/5+GULB622Ntz1ch1jzVsXvRdSpX1tz7QnT0r/BzBZKmhu8/a2k+4PXLf0bEq6Vmi+V9Pvgku/rZhZTfPDRpNYsNV+3mY1T/F7OmqDPT66kN4LOK94ea0kys9mSzpZ0RnDMJQ+OdQt8rq1H67aX/oJeRs9IutI5t6Ku3Tm3XdJ+Mzsx6O13oaQWz8o60ZOSzg/upeVJyle848cqSflmlmdmqZLOD9ZNpm2STgteT5H0XvD6SUkXBj3STpS0NzjmPnhc8VplZgWK3zDfqeaPe9I5595xzuU454Y754Yr/sv0eOfcDnl8rM1suqR/lzTTOVdZb5G3x1p+/pxB6ha9/r6m+A9vtaRPJC0J2q+R9Jmkt+o96np5lUh6V/EePncrGKEj2TUHy64O6tqger0RFe/htTFYdrUHx32SpNWK94x6TVJx0G6S7gnqfEf1ejUm+6F4MD0c/Ld/Q9KU1o67bw9JH+rvvf58PtabFL/fU/ez999d4Vj79nPGI/5gCCUAgNe67aU/AED3QFABALxGUAEAvEZQAQC8RlABALxGUMFrZlaR4M+/38zGBK+vOoTth5vZux1fGYA6dE+H18yswjnX29d9mdlwSU8758YmpCgAnFGh6zGzo83sz8FcR382s2FB+4PB/EwrzWyzmX09aA+Z2X8Fc1A9bWZ/rLdsqZmVmNktkjKC+bUWNT5TCuaC+o/gdbGZrTGzVyT9S711wsE8TKuC2uZ04mEBui2CCl3R3YpPb/ElxQc7vavessGKj5pxtqRbgrb/I2m4pHGSvqv4XGQNOOd+LKnKOXesc25WK/v/laTLnHONP+dixYcxOkHxQW+/FwwTBOAwEFToir4s6ZHg9a8VD6Y6jzvnYs65v0oaGLRNkvTboH2HpL8c6o7NrK+kfs65ZfX2X2eq4mPvvaX4sFJHKj6WHYDD0CVGTwdaUf9Ga3W919bouT2iaviHXHq9z2ruxq5J+lfn3JJD2B+AZnBGha5opeIjW0vSLEkvt7L+y5LODe5VDZQ0uZn1aswsJXj9iaQcMzvSzNIUv5Qo59weSXvNrO4srv5lwiWSLq37DDMrMLNe7fh3AWgCZ1TwXaaZ1Z+R+TZJl0l6wMz+n6RySf/cymf8TvGJHt9VfGTs1yTtbWK9BZLeNrM3nHOzzOz6YN0PJK2vt94/B/uvVDyc6tyv+L2wN4IpZMolndOmfyWAZtE9HT2CmfV2zlWY2ZGKz390cnC/CoDnOKNCT/F0MJlmqqQbCCmg6+CMCgDgNTpTAAC8RlABALxGUAEAvEZQAQC8RlABALz2v9C17eTpIH76AAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<Figure size 437x360 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "sns.lmplot(x=\"longitude\", y=\"latitude\", fit_reg=False, hue='interest_level',data=traindata);\n",
    "pyplot.xlabel('Longitude');\n",
    "pyplot.ylabel('Latitude');"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "纽约市中心位于北纬40°42'51.67\"，西经74°0'21.50\"，即纬度40.714352777777776，经度-74.00597222222223。\n",
    "由上图中很明显看到部分样本不在纽约市内，予以剔除。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 纽约市中心坐标\n",
    "NewYorkLat = 40.714352777777776\n",
    "NewYorkLon = -74.00597222222223"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(49231, 12)"
      ]
     },
     "execution_count": 33,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "traindata = traindata[(traindata['longitude'] < -73.8) & (traindata['longitude'] > -74.05)]\n",
    "traindata.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(49228, 12)"
      ]
     },
     "execution_count": 34,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "traindata = traindata[(traindata['latitude'] < 41) & (traindata['latitude'] > 38)]\n",
    "traindata.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAs0AAAKACAYAAABniUUzAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvhp/UCwAAIABJREFUeJzs3Xl0XPd93/33795Z7wxmsJEEwAUEF0kQKVoSKcmSbEfxIsuR46qOw6aW8/jESdPnSdImcdvEaZ/WR3GzdEnaniZt46bK08RSXdnHTRwlsmlblhNrh0iJGyQuIEgsgx0zg5k76733+WNIShApDSiCBEl9XufwAHN1753fABT4wW++v+/PBEGAiIiIiIi8NWulByAiIiIicqVTaBYRERERaUKhWURERESkCYVmEREREZEmFJpFRERERJpQaBYRERERaUKhWURERESkCYVmEREREZEmFJpFRERERJoIrfQAlst9990XfOtb31rpYYiIiIisNLPSA7gWXTMzzTMzMys9BBERERG5Rl0zoVlERERE5FJRaBYRERERaUKhWURERESkCYVmEREREZEmFJpFRERERJpQaBYRERERaUKhWURERESkCYVmEREREZEmFJpFRERERJq45KHZGGMbY/YZYx4//fiXjDHHjDGBMabzba77rDHm6Ok/n73U4xQREREReSuXY6b5l4HBNzx+GvgwcPKtLjDGtANfBO4Abge+aIxpu5SDFBERERF5K5c0NBtj1gH3A3985lgQBPuCIBhuculHge8EQTAXBME88B3gvks2UBERERGRt3GpZ5r/I/BrgH+B160FRt7wePT0sUWMMT9vjBkwxgxMT0+/81GKiIiIiLyNSxaajTEfB6aCIHjpnVx+nmPBOQeC4MtBEOwKgmDXqlWr3sHTiIiIiIg0dylnmu8GPmGMGQa+CnzQGPOVJV47Cqx/w+N1wPjyDk9EREREZGkuWWgOguA3giBYFwTBRuCngCeDIPjMEi//NnCvMabt9ALAe08fExERERG57C57n2ZjzD82xozSmD3eb4z549PHd535PAiCOeBLwIun//zm6WMiIiIiIpedCYJzSoWvSrt27QoGBgZWehgiIiIiK+18a8PkImlHQBERERGRJhSaRURERESaUGgWEREREWlCoVlEREREpInQSg9ARETk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\n",
      "text/plain": [
       "<Figure size 725x648 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "sns.lmplot(x=\"longitude\", y=\"latitude\", fit_reg=False, hue='interest_level',size=9, scatter_kws={'alpha':0.4,'s':30},data=traindata);\n",
    "pyplot.xlabel('Longitude');\n",
    "pyplot.ylabel('Latitude');"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>bathrooms</th>\n",
       "      <th>bedrooms</th>\n",
       "      <th>created</th>\n",
       "      <th>description</th>\n",
       "      <th>display_address</th>\n",
       "      <th>features</th>\n",
       "      <th>latitude</th>\n",
       "      <th>longitude</th>\n",
       "      <th>photos</th>\n",
       "      <th>price</th>\n",
       "      <th>street_address</th>\n",
       "      <th>interest_level</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>100030</th>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>2016-04-14 01:10:30</td>\n",
       "      <td>New to the market! Spacious studio located in ...</td>\n",
       "      <td>York Avenue</td>\n",
       "      <td>[]</td>\n",
       "      <td>40.7769</td>\n",
       "      <td>-73.9467</td>\n",
       "      <td>[https://photos.renthop.com/2/6869199_06b2601f...</td>\n",
       "      <td>1950</td>\n",
       "      <td>1661 York Avenue</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100051</th>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>2016-04-18 02:36:00</td>\n",
       "      <td>Stunning  full renovated studio unit. High cei...</td>\n",
       "      <td>East 34th Street</td>\n",
       "      <td>[Doorman, Elevator, Fitness Center, Laundry in...</td>\n",
       "      <td>40.7439</td>\n",
       "      <td>-73.9743</td>\n",
       "      <td>[https://photos.renthop.com/2/6889043_a3e1c004...</td>\n",
       "      <td>2350</td>\n",
       "      <td>340 East 34th Street</td>\n",
       "      <td>medium</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100083</th>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>2016-04-21 02:17:28</td>\n",
       "      <td>Enjoy the Upper West Side life-style!  This ap...</td>\n",
       "      <td>250 West 88th Street</td>\n",
       "      <td>[Doorman, Elevator, Pre-War, Exclusive, Dogs A...</td>\n",
       "      <td>40.7897</td>\n",
       "      <td>-73.9760</td>\n",
       "      <td>[https://photos.renthop.com/2/6904268_657c825a...</td>\n",
       "      <td>2750</td>\n",
       "      <td>250 West 88th Street</td>\n",
       "      <td>medium</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100096</th>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>2016-04-04 03:47:57</td>\n",
       "      <td>Location: 141st St. and Malcolm X BlvdSubway: ...</td>\n",
       "      <td>West 141st Street</td>\n",
       "      <td>[prewar, Dogs Allowed, Cats Allowed, LOWRISE, ...</td>\n",
       "      <td>40.8184</td>\n",
       "      <td>-73.9389</td>\n",
       "      <td>[https://photos.renthop.com/2/6821706_bf71ecb1...</td>\n",
       "      <td>1300</td>\n",
       "      <td>111-115 West 141st Street</td>\n",
       "      <td>low</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100098</th>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>2016-04-17 02:16:42</td>\n",
       "      <td>Located in one of Manhattan's most desirable a...</td>\n",
       "      <td>West 58th Street</td>\n",
       "      <td>[Doorman, Elevator, Pre-War, Dishwasher, Dogs ...</td>\n",
       "      <td>40.7649</td>\n",
       "      <td>-73.9763</td>\n",
       "      <td>[https://photos.renthop.com/2/6885742_51e79649...</td>\n",
       "      <td>1980</td>\n",
       "      <td>57 West 58th Street</td>\n",
       "      <td>high</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "        bathrooms  bedrooms              created  \\\n",
       "100030        1.0       1.0  2016-04-14 01:10:30   \n",
       "100051        1.0       1.0  2016-04-18 02:36:00   \n",
       "100083        1.0       1.0  2016-04-21 02:17:28   \n",
       "100096        1.0       1.0  2016-04-04 03:47:57   \n",
       "100098        1.0       1.0  2016-04-17 02:16:42   \n",
       "\n",
       "                                              description  \\\n",
       "100030  New to the market! Spacious studio located in ...   \n",
       "100051  Stunning  full renovated studio unit. High cei...   \n",
       "100083  Enjoy the Upper West Side life-style!  This ap...   \n",
       "100096  Location: 141st St. and Malcolm X BlvdSubway: ...   \n",
       "100098  Located in one of Manhattan's most desirable a...   \n",
       "\n",
       "             display_address  \\\n",
       "100030           York Avenue   \n",
       "100051      East 34th Street   \n",
       "100083  250 West 88th Street   \n",
       "100096     West 141st Street   \n",
       "100098      West 58th Street   \n",
       "\n",
       "                                                 features  latitude  \\\n",
       "100030                                                 []   40.7769   \n",
       "100051  [Doorman, Elevator, Fitness Center, Laundry in...   40.7439   \n",
       "100083  [Doorman, Elevator, Pre-War, Exclusive, Dogs A...   40.7897   \n",
       "100096  [prewar, Dogs Allowed, Cats Allowed, LOWRISE, ...   40.8184   \n",
       "100098  [Doorman, Elevator, Pre-War, Dishwasher, Dogs ...   40.7649   \n",
       "\n",
       "        longitude                                             photos  price  \\\n",
       "100030   -73.9467  [https://photos.renthop.com/2/6869199_06b2601f...   1950   \n",
       "100051   -73.9743  [https://photos.renthop.com/2/6889043_a3e1c004...   2350   \n",
       "100083   -73.9760  [https://photos.renthop.com/2/6904268_657c825a...   2750   \n",
       "100096   -73.9389  [https://photos.renthop.com/2/6821706_bf71ecb1...   1300   \n",
       "100098   -73.9763  [https://photos.renthop.com/2/6885742_51e79649...   1980   \n",
       "\n",
       "                   street_address interest_level  \n",
       "100030           1661 York Avenue            low  \n",
       "100051       340 East 34th Street         medium  \n",
       "100083       250 West 88th Street         medium  \n",
       "100096  111-115 West 141st Street            low  \n",
       "100098        57 West 58th Street           high  "
      ]
     },
     "execution_count": 36,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "traindata.head()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### created 日期"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 37,
   "metadata": {},
   "outputs": [],
   "source": [
    "def procdess_created(df):\n",
    "    df['created'] = pd.to_datetime(df['created'])\n",
    "    df[\"year\"] = df[\"created\"].dt.year\n",
    "    df['month'] = df['created'].dt.month\n",
    "    df['day'] = df['created'].dt.day\n",
    "    df['hour'] = df['created'].dt.hour\n",
    "    df['weekday'] = df['created'].dt.weekday\n",
    "    df['week'] = df['created'].dt.week\n",
    "    # 季度\n",
    "    df['quarter'] = df['created'].dt.quarter\n",
    "    # 是否为假期\n",
    "    df['weekend'] = ((df['weekday'] == 5) | (df['weekday'] == 6))\n",
    "\n",
    "    df.drop(['created'], axis=1,inplace = True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 38,
   "metadata": {
    "scrolled": true
   },
   "outputs": [],
   "source": [
    "procdess_created(traindata)\n",
    "procdess_created(testdata)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 39,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>bathrooms</th>\n",
       "      <th>bedrooms</th>\n",
       "      <th>description</th>\n",
       "      <th>display_address</th>\n",
       "      <th>features</th>\n",
       "      <th>latitude</th>\n",
       "      <th>longitude</th>\n",
       "      <th>photos</th>\n",
       "      <th>price</th>\n",
       "      <th>street_address</th>\n",
       "      <th>interest_level</th>\n",
       "      <th>year</th>\n",
       "      <th>month</th>\n",
       "      <th>day</th>\n",
       "      <th>hour</th>\n",
       "      <th>weekday</th>\n",
       "      <th>week</th>\n",
       "      <th>quarter</th>\n",
       "      <th>weekend</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>100030</th>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>New to the market! Spacious studio located in ...</td>\n",
       "      <td>York Avenue</td>\n",
       "      <td>[]</td>\n",
       "      <td>40.7769</td>\n",
       "      <td>-73.9467</td>\n",
       "      <td>[https://photos.renthop.com/2/6869199_06b2601f...</td>\n",
       "      <td>1950</td>\n",
       "      <td>1661 York Avenue</td>\n",
       "      <td>low</td>\n",
       "      <td>2016</td>\n",
       "      <td>4</td>\n",
       "      <td>14</td>\n",
       "      <td>1</td>\n",
       "      <td>3</td>\n",
       "      <td>15</td>\n",
       "      <td>2</td>\n",
       "      <td>False</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100051</th>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>Stunning  full renovated studio unit. High cei...</td>\n",
       "      <td>East 34th Street</td>\n",
       "      <td>[Doorman, Elevator, Fitness Center, Laundry in...</td>\n",
       "      <td>40.7439</td>\n",
       "      <td>-73.9743</td>\n",
       "      <td>[https://photos.renthop.com/2/6889043_a3e1c004...</td>\n",
       "      <td>2350</td>\n",
       "      <td>340 East 34th Street</td>\n",
       "      <td>medium</td>\n",
       "      <td>2016</td>\n",
       "      <td>4</td>\n",
       "      <td>18</td>\n",
       "      <td>2</td>\n",
       "      <td>0</td>\n",
       "      <td>16</td>\n",
       "      <td>2</td>\n",
       "      <td>False</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100083</th>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>Enjoy the Upper West Side life-style!  This ap...</td>\n",
       "      <td>250 West 88th Street</td>\n",
       "      <td>[Doorman, Elevator, Pre-War, Exclusive, Dogs A...</td>\n",
       "      <td>40.7897</td>\n",
       "      <td>-73.9760</td>\n",
       "      <td>[https://photos.renthop.com/2/6904268_657c825a...</td>\n",
       "      <td>2750</td>\n",
       "      <td>250 West 88th Street</td>\n",
       "      <td>medium</td>\n",
       "      <td>2016</td>\n",
       "      <td>4</td>\n",
       "      <td>21</td>\n",
       "      <td>2</td>\n",
       "      <td>3</td>\n",
       "      <td>16</td>\n",
       "      <td>2</td>\n",
       "      <td>False</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100096</th>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>Location: 141st St. and Malcolm X BlvdSubway: ...</td>\n",
       "      <td>West 141st Street</td>\n",
       "      <td>[prewar, Dogs Allowed, Cats Allowed, LOWRISE, ...</td>\n",
       "      <td>40.8184</td>\n",
       "      <td>-73.9389</td>\n",
       "      <td>[https://photos.renthop.com/2/6821706_bf71ecb1...</td>\n",
       "      <td>1300</td>\n",
       "      <td>111-115 West 141st Street</td>\n",
       "      <td>low</td>\n",
       "      <td>2016</td>\n",
       "      <td>4</td>\n",
       "      <td>4</td>\n",
       "      <td>3</td>\n",
       "      <td>0</td>\n",
       "      <td>14</td>\n",
       "      <td>2</td>\n",
       "      <td>False</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100098</th>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>Located in one of Manhattan's most desirable a...</td>\n",
       "      <td>West 58th Street</td>\n",
       "      <td>[Doorman, Elevator, Pre-War, Dishwasher, Dogs ...</td>\n",
       "      <td>40.7649</td>\n",
       "      <td>-73.9763</td>\n",
       "      <td>[https://photos.renthop.com/2/6885742_51e79649...</td>\n",
       "      <td>1980</td>\n",
       "      <td>57 West 58th Street</td>\n",
       "      <td>high</td>\n",
       "      <td>2016</td>\n",
       "      <td>4</td>\n",
       "      <td>17</td>\n",
       "      <td>2</td>\n",
       "      <td>6</td>\n",
       "      <td>15</td>\n",
       "      <td>2</td>\n",
       "      <td>True</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "        bathrooms  bedrooms  \\\n",
       "100030        1.0       1.0   \n",
       "100051        1.0       1.0   \n",
       "100083        1.0       1.0   \n",
       "100096        1.0       1.0   \n",
       "100098        1.0       1.0   \n",
       "\n",
       "                                              description  \\\n",
       "100030  New to the market! Spacious studio located in ...   \n",
       "100051  Stunning  full renovated studio unit. High cei...   \n",
       "100083  Enjoy the Upper West Side life-style!  This ap...   \n",
       "100096  Location: 141st St. and Malcolm X BlvdSubway: ...   \n",
       "100098  Located in one of Manhattan's most desirable a...   \n",
       "\n",
       "             display_address  \\\n",
       "100030           York Avenue   \n",
       "100051      East 34th Street   \n",
       "100083  250 West 88th Street   \n",
       "100096     West 141st Street   \n",
       "100098      West 58th Street   \n",
       "\n",
       "                                                 features  latitude  \\\n",
       "100030                                                 []   40.7769   \n",
       "100051  [Doorman, Elevator, Fitness Center, Laundry in...   40.7439   \n",
       "100083  [Doorman, Elevator, Pre-War, Exclusive, Dogs A...   40.7897   \n",
       "100096  [prewar, Dogs Allowed, Cats Allowed, LOWRISE, ...   40.8184   \n",
       "100098  [Doorman, Elevator, Pre-War, Dishwasher, Dogs ...   40.7649   \n",
       "\n",
       "        longitude                                             photos  price  \\\n",
       "100030   -73.9467  [https://photos.renthop.com/2/6869199_06b2601f...   1950   \n",
       "100051   -73.9743  [https://photos.renthop.com/2/6889043_a3e1c004...   2350   \n",
       "100083   -73.9760  [https://photos.renthop.com/2/6904268_657c825a...   2750   \n",
       "100096   -73.9389  [https://photos.renthop.com/2/6821706_bf71ecb1...   1300   \n",
       "100098   -73.9763  [https://photos.renthop.com/2/6885742_51e79649...   1980   \n",
       "\n",
       "                   street_address interest_level  year  month  day  hour  \\\n",
       "100030           1661 York Avenue            low  2016      4   14     1   \n",
       "100051       340 East 34th Street         medium  2016      4   18     2   \n",
       "100083       250 West 88th Street         medium  2016      4   21     2   \n",
       "100096  111-115 West 141st Street            low  2016      4    4     3   \n",
       "100098        57 West 58th Street           high  2016      4   17     2   \n",
       "\n",
       "        weekday  week  quarter  weekend  \n",
       "100030        3    15        2    False  \n",
       "100051        0    16        2    False  \n",
       "100083        3    16        2    False  \n",
       "100096        0    14        2    False  \n",
       "100098        6    15        2     True  "
      ]
     },
     "execution_count": 39,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "traindata.head()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### photos 照片"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 40,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\pandas\\core\\indexing.py:189: SettingWithCopyWarning: \n",
      "A value is trying to be set on a copy of a slice from a DataFrame\n",
      "\n",
      "See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy\n",
      "  self._setitem_with_indexer(indexer, value)\n"
     ]
    }
   ],
   "source": [
    "# 取照片数量作为特征并删除照片网址\n",
    "traindata['num_photos'] = traindata['photos'].apply(len)\n",
    "ulimit = np.percentile(traindata.num_photos.values, 99)\n",
    "traindata['num_photos'].loc[traindata['num_photos']>ulimit] = ulimit\n",
    "\n",
    "testdata['num_photos'] = testdata['photos'].apply(len)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 41,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\matplotlib\\axes\\_axes.py:6462: UserWarning: The 'normed' kwarg is deprecated, and has been replaced by the 'density' kwarg.\n",
      "  warnings.warn(\"The 'normed' kwarg is deprecated, and has been \"\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = pyplot.figure()\n",
    "sns.distplot(traindata.num_photos.values, bins=30, kde=False)\n",
    "pyplot.xlabel('Number of num_photos', fontsize=10)\n",
    "pyplot.ylabel('Number of occurrences', fontsize=10)\n",
    "pyplot.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 42,
   "metadata": {
    "scrolled": false
   },
   "outputs": [],
   "source": [
    "# 删除photos特征\n",
    "traindata.drop(['photos'], axis = 1, inplace = True)\n",
    "testdata.drop(['photos'], axis = 1, inplace = True)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### features 特点"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 43,
   "metadata": {
    "scrolled": true
   },
   "outputs": [],
   "source": [
    "# 添加特点数量属性，因为感兴趣程度与特点数量有关，特点越多描述越详细，且写出来的大多为优点\n",
    "traindata['num_features'] = traindata['features'].apply(len)\n",
    "testdata['num_features'] = testdata['features'].apply(len)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 44,
   "metadata": {},
   "outputs": [],
   "source": [
    "def procdess_features_train_test(df_train, df_test):\n",
    "    n_train_samples = len(df_train.index)\n",
    "    \n",
    "    df_train_test = pd.concat((df_train, df_test), axis=0)\n",
    "    df_train_test['features2'] = df_train_test['features']\n",
    "    df_train_test['features2'] = df_train_test['features2'].apply(lambda x: ' '.join(x))\n",
    "\n",
    "    c_vect = CountVectorizer(stop_words='english', max_features=200, ngram_range=(1, 1), decode_error='ignore')\n",
    "    c_vect_sparse = c_vect.fit_transform(df_train_test['features2'])\n",
    "    c_vect_sparse_cols = c_vect.get_feature_names()\n",
    "\n",
    "    df_train.drop(['features'], axis=1, inplace=True)\n",
    "    df_test.drop(['features'], axis=1, inplace=True)\n",
    "    \n",
    "#     #hstack作为特征处理的最后一部，先将其他所有特征都转换成数值型特征才能处理,稀疏表示\n",
    "#     df_train_sparse = sparse.hstack([df_train, c_vect_sparse[:n_train_samples,:]]).tocsr()\n",
    "#     df_test_sparse = sparse.hstack([df_test, c_vect_sparse[n_train_samples:,:]]).tocsr()\n",
    "    \n",
    "    #常规datafrmae\n",
    "    tmp = pd.DataFrame(c_vect_sparse.toarray()[:n_train_samples,:],columns = c_vect_sparse_cols, index=df_train.index)\n",
    "    df_train = pd.concat([df_train, tmp], axis=1)\n",
    "    \n",
    "    tmp = pd.DataFrame(c_vect_sparse.toarray()[n_train_samples:,:],columns = c_vect_sparse_cols, index=df_test.index)\n",
    "    df_test = pd.concat([df_test, tmp], axis=1)\n",
    "    \n",
    "    #df_test = pd.concat([df_test, tmp[n_train_samples:,:]], axis=1)\n",
    "  \n",
    "    return df_train, df_test\n",
    "#     return df_train_sparse,df_test_sparse,df_train, df_test"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 45,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\ipykernel_launcher.py:4: FutureWarning: Sorting because non-concatenation axis is not aligned. A future version\n",
      "of pandas will change to not sort by default.\n",
      "\n",
      "To accept the future behavior, pass 'sort=True'.\n",
      "\n",
      "To retain the current behavior and silence the warning, pass sort=False\n",
      "\n",
      "  after removing the cwd from sys.path.\n"
     ]
    }
   ],
   "source": [
    "traindata, testdata = procdess_features_train_test(traindata, testdata)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### display_address 地址、street_address 街道地址、description 描述"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 46,
   "metadata": {},
   "outputs": [],
   "source": [
    "traindata.drop(['display_address', 'street_address', 'description'], axis = 1, inplace = True)\n",
    "testdata.drop(['display_address', 'street_address', 'description'], axis = 1, inplace = True)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### 因数据量大，电脑运行速度过慢跑不起来，故截取10000组数据作为训练和测试数据"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 47,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(10000, 216)"
      ]
     },
     "execution_count": 47,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "traindata = traindata.sample(n = 10000)\n",
    "traindata.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 54,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(10000, 215)"
      ]
     },
     "execution_count": 54,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "testdata = testdata.sample(n = 10000)\n",
    "testdata.shape"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "添加特征distance表示房屋距市中心距离"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 48,
   "metadata": {},
   "outputs": [],
   "source": [
    "from math import radians, cos, sin, asin, sqrt\n",
    "\n",
    "#根据经纬度位置计算两点间距离\n",
    "def geodistance(lng1,lat1,lng2,lat2):\n",
    "    lng1 = lng1/180*3.14159\n",
    "    lat1 = lat1/180*3.14159\n",
    "    lng2 = lng2/180*3.14159\n",
    "    lat2 = lat2/180*3.14159\n",
    "    lng1, lat1, lng2, lat2 = map(radians, [lng1, lat1, lng2, lat2])\n",
    "    dlon=lng2-lng1\n",
    "    dlat=lat2-lat1\n",
    "    a=sin(dlat/2)**2 + cos(lat1) * cos(lat2) * sin(dlon/2)**2 \n",
    "    dis=2*asin(sqrt(a))*6371*1000\n",
    "    return dis"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 49,
   "metadata": {},
   "outputs": [],
   "source": [
    "traindata['distance'] = 0\n",
    "# testdata['distance'] = 0\n",
    "trainsize = traindata.shape[0]\n",
    "testsize = testdata.shape[0]\n",
    "\n",
    "for i in range(0, trainsize):\n",
    "    traindata.iloc[i].distance = geodistance(traindata.iloc[i].longitude, traindata.iloc[i].latitude, NewYorkLon, NewYorkLat)\n",
    "# for i in range(0, testsize):\n",
    "#     testdata.iloc[i].distance = geodistance(testdata.iloc[i].longitude, testdata.iloc[i].latitude, NewYorkLon, NewYorkLat)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### interest_level 感兴趣等级"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 50,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 用有序数字替换感兴趣等级，low = 0, medium = 1, high = 2\n",
    "traindata['interest_level'] = np.where(traindata.interest_level=='low', 0,np.where(traindata.interest_level=='medium', 1, 2))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 模型选择"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 数据预处理"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 60,
   "metadata": {
    "scrolled": true
   },
   "outputs": [],
   "source": [
    "X_train = traindata.drop(['interest_level'], axis = 1, inplace = False)\n",
    "y_train = traindata['interest_level']\n",
    "X_test = testdata\n",
    "\n",
    "# 初始化特征的标准化器\n",
    "ss_X = StandardScaler()\n",
    "\n",
    "# 分别对训练和测试数据的特征进行标准化处理\n",
    "X_train = ss_X.fit_transform(X_train)\n",
    "# X_test = ss_X.transform(X_test)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Logistic 回归"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Logistic 回归默认参数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 61,
   "metadata": {},
   "outputs": [],
   "source": [
    "from sklearn.linear_model import LogisticRegression\n",
    "lr= LogisticRegression()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 62,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\sklearn\\cross_validation.py:41: DeprecationWarning: This module was deprecated in version 0.18 in favor of the model_selection module into which all the refactored classes and functions are moved. Also note that the interface of the new CV iterators are different from that of this module. This module will be removed in 0.20.\n",
      "  \"This module will be removed in 0.20.\", DeprecationWarning)\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "accuracy of each fold is:  [0.69115442 0.69915042 0.69965017 0.68834417 0.70520521]\n",
      "cv accuracy is: 0.6967008799560007\n"
     ]
    }
   ],
   "source": [
    "# 交叉验证用于评估模型性能和进行参数调优（模型选择）\n",
    "#分类任务中交叉验证缺省是采用StratifiedKFold\n",
    "from sklearn.cross_validation import cross_val_score\n",
    "accuracy = cross_val_score(lr, X_train, y_train, cv=5) # 5折交叉验证   \n",
    "print('accuracy of each fold is: ',accuracy)\n",
    "print('cv accuracy is:', accuracy.mean())"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### 正则化的 Logistic Regression及参数调优"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 64,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "GridSearchCV(cv=5, error_score='raise',\n",
       "       estimator=LogisticRegression(C=1.0, class_weight=None, dual=False, fit_intercept=True,\n",
       "          intercept_scaling=1, max_iter=100, multi_class='ovr', n_jobs=1,\n",
       "          penalty='l2', random_state=None, solver='liblinear', tol=0.0001,\n",
       "          verbose=0, warm_start=False),\n",
       "       fit_params=None, iid=True, n_jobs=1,\n",
       "       param_grid={'penalty': ['l1', 'l2'], 'C': [0.001, 0.01, 0.1, 1, 10, 100, 1000]},\n",
       "       pre_dispatch='2*n_jobs', refit=True, return_train_score='warn',\n",
       "       scoring=None, verbose=0)"
      ]
     },
     "execution_count": 64,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#需要调优的参数\n",
    "# 请尝试将L1正则和L2正则分开，并配合合适的优化求解算法（slover）\n",
    "#tuned_parameters = {'penalty':['l1','l2'],\n",
    "#                   'C': [0.001, 0.01, 0.1, 1, 10, 100, 1000]\n",
    "#                   }\n",
    "penaltys = ['l1','l2']\n",
    "Cs = [0.001, 0.01, 0.1, 1, 10, 100, 1000]\n",
    "tuned_parameters = dict(penalty = penaltys, C = Cs)\n",
    "\n",
    "lr_penalty= LogisticRegression()\n",
    "grid= GridSearchCV(lr_penalty, tuned_parameters,cv=5 ) # scoring='neg_log_loss'\n",
    "grid.fit(X_train,y_train)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 65,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\sklearn\\utils\\deprecation.py:122: FutureWarning: You are accessing a training score ('split0_train_score'), which will not be available by default any more in 0.21. If you need training scores, please set return_train_score=True\n",
      "  warnings.warn(*warn_args, **warn_kwargs)\n",
      "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\sklearn\\utils\\deprecation.py:122: FutureWarning: You are accessing a training score ('split1_train_score'), which will not be available by default any more in 0.21. If you need training scores, please set return_train_score=True\n",
      "  warnings.warn(*warn_args, **warn_kwargs)\n",
      "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\sklearn\\utils\\deprecation.py:122: FutureWarning: You are accessing a training score ('split2_train_score'), which will not be available by default any more in 0.21. If you need training scores, please set return_train_score=True\n",
      "  warnings.warn(*warn_args, **warn_kwargs)\n",
      "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\sklearn\\utils\\deprecation.py:122: FutureWarning: You are accessing a training score ('split3_train_score'), which will not be available by default any more in 0.21. If you need training scores, please set return_train_score=True\n",
      "  warnings.warn(*warn_args, **warn_kwargs)\n",
      "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\sklearn\\utils\\deprecation.py:122: FutureWarning: You are accessing a training score ('split4_train_score'), which will not be available by default any more in 0.21. If you need training scores, please set return_train_score=True\n",
      "  warnings.warn(*warn_args, **warn_kwargs)\n",
      "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\sklearn\\utils\\deprecation.py:122: FutureWarning: You are accessing a training score ('mean_train_score'), which will not be available by default any more in 0.21. If you need training scores, please set return_train_score=True\n",
      "  warnings.warn(*warn_args, **warn_kwargs)\n",
      "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\sklearn\\utils\\deprecation.py:122: FutureWarning: You are accessing a training score ('std_train_score'), which will not be available by default any more in 0.21. If you need training scores, please set return_train_score=True\n",
      "  warnings.warn(*warn_args, **warn_kwargs)\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "{'mean_fit_time': array([2.01261711e-01, 7.05910921e-01, 3.37696123e-01, 1.42419090e+00,\n",
       "        2.37305174e+00, 3.29019895e+00, 1.50455516e+01, 8.45318718e+00,\n",
       "        1.45645985e+02, 1.73695338e+01, 3.01823798e+02, 2.42738665e+01,\n",
       "        4.22710814e+02, 2.69307583e+01]),\n",
       " 'std_fit_time': array([3.36097167e-03, 1.16206477e-02, 1.49616880e-02, 4.52359116e-02,\n",
       "        1.40260496e+00, 7.58307386e-02, 4.40912419e+00, 4.81625325e-01,\n",
       "        2.02549268e+01, 9.31015175e-01, 4.88775317e+01, 2.16880957e+00,\n",
       "        1.09566670e+02, 2.14179728e+00]),\n",
       " 'mean_score_time': array([0.00179629, 0.00199661, 0.00219526, 0.0019958 , 0.00219479,\n",
       "        0.00199609, 0.00199609, 0.0017982 , 0.00239348, 0.00199623,\n",
       "        0.0019958 , 0.00219488, 0.00199647, 0.00179648]),\n",
       " 'std_score_time': array([3.98898762e-04, 8.06404806e-07, 7.46442334e-04, 1.46971083e-06,\n",
       "        3.98684503e-04, 1.50336101e-06, 1.43368686e-06, 3.97349277e-04,\n",
       "        4.88227649e-04, 1.30935003e-06, 1.73898530e-06, 3.98279731e-04,\n",
       "        1.08106461e-06, 3.99354664e-04]),\n",
       " 'param_C': masked_array(data=[0.001, 0.001, 0.01, 0.01, 0.1, 0.1, 1, 1, 10, 10, 100,\n",
       "                    100, 1000, 1000],\n",
       "              mask=[False, False, False, False, False, False, False, False,\n",
       "                    False, False, False, False, False, False],\n",
       "        fill_value='?',\n",
       "             dtype=object),\n",
       " 'param_penalty': masked_array(data=['l1', 'l2', 'l1', 'l2', 'l1', 'l2', 'l1', 'l2', 'l1',\n",
       "                    'l2', 'l1', 'l2', 'l1', 'l2'],\n",
       "              mask=[False, False, False, False, False, False, False, False,\n",
       "                    False, False, False, False, False, False],\n",
       "        fill_value='?',\n",
       "             dtype=object),\n",
       " 'params': [{'C': 0.001, 'penalty': 'l1'},\n",
       "  {'C': 0.001, 'penalty': 'l2'},\n",
       "  {'C': 0.01, 'penalty': 'l1'},\n",
       "  {'C': 0.01, 'penalty': 'l2'},\n",
       "  {'C': 0.1, 'penalty': 'l1'},\n",
       "  {'C': 0.1, 'penalty': 'l2'},\n",
       "  {'C': 1, 'penalty': 'l1'},\n",
       "  {'C': 1, 'penalty': 'l2'},\n",
       "  {'C': 10, 'penalty': 'l1'},\n",
       "  {'C': 10, 'penalty': 'l2'},\n",
       "  {'C': 100, 'penalty': 'l1'},\n",
       "  {'C': 100, 'penalty': 'l2'},\n",
       "  {'C': 1000, 'penalty': 'l1'},\n",
       "  {'C': 1000, 'penalty': 'l2'}],\n",
       " 'split0_test_score': array([0.69165417, 0.68515742, 0.68965517, 0.68565717, 0.69465267,\n",
       "        0.69015492, 0.69165417, 0.69115442, 0.69265367, 0.69265367,\n",
       "        0.69215392, 0.69265367, 0.69065467, 0.69315342]),\n",
       " 'split1_test_score': array([0.69165417, 0.69515242, 0.68965517, 0.69965017, 0.69565217,\n",
       "        0.69815092, 0.70114943, 0.69915042, 0.69865067, 0.69865067,\n",
       "        0.69815092, 0.69765117, 0.69965017, 0.69565217]),\n",
       " 'split2_test_score': array([0.69165417, 0.69115442, 0.69565217, 0.69315342, 0.70364818,\n",
       "        0.70064968, 0.69865067, 0.69965017, 0.69965017, 0.69965017,\n",
       "        0.70014993, 0.69965017, 0.70064968, 0.70014993]),\n",
       " 'split3_test_score': array([0.69184592, 0.68934467, 0.69634817, 0.69084542, 0.69034517,\n",
       "        0.68934467, 0.68834417, 0.68834417, 0.68784392, 0.68734367,\n",
       "        0.68784392, 0.68834417, 0.68884442, 0.68784392]),\n",
       " 'split4_test_score': array([0.69219219, 0.6971972 , 0.6976977 , 0.6976977 , 0.70670671,\n",
       "        0.70520521, 0.70520521, 0.70520521, 0.70620621, 0.70620621,\n",
       "        0.7047047 , 0.70520521, 0.70520521, 0.7047047 ]),\n",
       " 'mean_test_score': array([0.6918, 0.6916, 0.6938, 0.6934, 0.6982, 0.6967, 0.697 , 0.6967,\n",
       "        0.697 , 0.6969, 0.6966, 0.6967, 0.697 , 0.6963]),\n",
       " 'std_test_score': array([0.00020957, 0.00425989, 0.00344893, 0.00498198, 0.00604551,\n",
       "        0.00611414, 0.00617557, 0.0061243 , 0.00627876, 0.00642605,\n",
       "        0.00595052, 0.00579733, 0.00623499, 0.00578261]),\n",
       " 'rank_test_score': array([13, 14, 11, 12,  1,  6,  2,  6,  2,  5,  9,  6,  2, 10]),\n",
       " 'split0_train_score': array([0.69183648, 0.70121265, 0.69571196, 0.70783848, 0.71321415,\n",
       "        0.71321415, 0.7135892 , 0.71383923, 0.71471434, 0.71433929,\n",
       "        0.71471434, 0.71446431, 0.71483935, 0.71496437]),\n",
       " 'split1_train_score': array([0.69183648, 0.69946243, 0.69608701, 0.70458807, 0.70921365,\n",
       "        0.71033879, 0.71271409, 0.71233904, 0.71308914, 0.71333917,\n",
       "        0.71321415, 0.71321415, 0.71333917, 0.71333917]),\n",
       " 'split2_train_score': array([0.69183648, 0.70171271, 0.69558695, 0.70671334, 0.70846356,\n",
       "        0.70858857, 0.7128391 , 0.71308914, 0.71396425, 0.71346418,\n",
       "        0.71408926, 0.71396425, 0.71408926, 0.71383923]),\n",
       " 'split3_train_score': array([0.69178853, 0.70191226, 0.69478815, 0.7071616 , 0.71216098,\n",
       "        0.71403575, 0.71478565, 0.7144107 , 0.71578553, 0.71566054,\n",
       "        0.71566054, 0.71566054, 0.71491064, 0.7160355 ]),\n",
       " 'split4_train_score': array([0.69170207, 0.6992002 , 0.69420145, 0.70582354, 0.7091977 ,\n",
       "        0.71044739, 0.71169708, 0.71244689, 0.71244689, 0.71244689,\n",
       "        0.71257186, 0.71269683, 0.71244689, 0.71282179]),\n",
       " 'mean_train_score': array([0.69180001, 0.70070005, 0.6952751 , 0.70642501, 0.71045001,\n",
       "        0.71132493, 0.71312502, 0.713225  , 0.71400003, 0.71385001,\n",
       "        0.71405003, 0.71400001, 0.71392506, 0.71420001]),\n",
       " 'std_train_score': array([5.23704582e-05, 1.14358654e-03, 6.83687471e-04, 1.12780312e-03,\n",
       "        1.87673920e-03, 2.00738005e-03, 1.02594309e-03, 7.98999053e-04,\n",
       "        1.17826092e-03, 1.08590959e-03, 1.08814374e-03, 1.02859924e-03,\n",
       "        9.34079161e-04, 1.15965033e-03])}"
      ]
     },
     "execution_count": 65,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# view the complete results (list of named tuples)\n",
    "grid.cv_results_"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 66,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0.6982\n",
      "{'C': 0.1, 'penalty': 'l1'}\n"
     ]
    }
   ],
   "source": [
    "# examine the best model\n",
    "print(grid.best_score_)\n",
    "print(grid.best_params_)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "正则化的 Logistic Regression最优参数为l1正则且C=0.001，最优accuracy为0.695。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 67,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\sklearn\\utils\\deprecation.py:122: FutureWarning: You are accessing a training score ('mean_train_score'), which will not be available by default any more in 0.21. If you need training scores, please set return_train_score=True\n",
      "  warnings.warn(*warn_args, **warn_kwargs)\n",
      "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\sklearn\\utils\\deprecation.py:122: FutureWarning: You are accessing a training score ('std_train_score'), which will not be available by default any more in 0.21. If you need training scores, please set return_train_score=True\n",
      "  warnings.warn(*warn_args, **warn_kwargs)\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# plot CV误差曲线\n",
    "test_means = grid.cv_results_[ 'mean_test_score' ]\n",
    "test_stds = grid.cv_results_[ 'std_test_score' ]\n",
    "train_means = grid.cv_results_[ 'mean_train_score' ]\n",
    "train_stds = grid.cv_results_[ 'std_train_score' ]\n",
    "\n",
    "\n",
    "# plot results\n",
    "n_Cs = len(Cs)\n",
    "number_penaltys = len(penaltys)\n",
    "test_scores = np.array(test_means).reshape(n_Cs,number_penaltys)\n",
    "train_scores = np.array(train_means).reshape(n_Cs,number_penaltys)\n",
    "test_stds = np.array(test_stds).reshape(n_Cs,number_penaltys)\n",
    "train_stds = np.array(train_stds).reshape(n_Cs,number_penaltys)\n",
    "\n",
    "x_axis = np.log10(Cs)\n",
    "for i, value in enumerate(penaltys):\n",
    "    #pyplot.plot(log(Cs), test_scores[i], label= 'penalty:'   + str(value))\n",
    "    pyplot.errorbar(x_axis, test_scores[:,i], yerr=test_stds[:,i] ,label = penaltys[i] +' Test')\n",
    "    pyplot.errorbar(x_axis, train_scores[:,i], yerr=train_stds[:,i] ,label = penaltys[i] +' Train')\n",
    "    \n",
    "pyplot.legend()\n",
    "pyplot.xlabel( 'log(C)' )                                                                                                      \n",
    "pyplot.ylabel( 'accuracy' )\n",
    "pyplot.savefig('LogisticGridSearchCV_C.png' )\n",
    "\n",
    "pyplot.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### RBFSVM"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 68,
   "metadata": {},
   "outputs": [],
   "source": [
    "from sklearn.svm import SVC"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 69,
   "metadata": {},
   "outputs": [],
   "source": [
    "def fit_grid_point_RBF(C, gamma, X_train, y_train, X_test, y_test):\n",
    "    \n",
    "    # 在训练集是那个利用SVC训练\n",
    "    SVC3 =  SVC( C = C, kernel='rbf', gamma = gamma)\n",
    "    SVC3 = SVC3.fit(X_train, y_train)\n",
    "    \n",
    "    # 在校验集上返回accuracy\n",
    "    accuracy = SVC3.score(X_test, y_test)\n",
    "    \n",
    "    print(\"accuracy: {}\".format(accuracy))\n",
    "    return accuracy"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 70,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "accuracy: 0.6918\n",
      "accuracy: 0.6918\n",
      "accuracy: 0.6918\n",
      "accuracy: 0.6918\n",
      "accuracy: 0.6918\n",
      "accuracy: 0.6918\n",
      "accuracy: 0.6918\n",
      "accuracy: 0.6918\n",
      "accuracy: 0.6918\n",
      "accuracy: 0.6918\n",
      "accuracy: 0.7176\n",
      "accuracy: 0.871\n",
      "accuracy: 0.9876\n",
      "accuracy: 0.9986\n",
      "accuracy: 1.0\n",
      "accuracy: 0.821\n",
      "accuracy: 0.9839\n",
      "accuracy: 0.9997\n",
      "accuracy: 1.0\n",
      "accuracy: 1.0\n",
      "accuracy: 0.9025\n",
      "accuracy: 0.9977\n",
      "accuracy: 1.0\n",
      "accuracy: 1.0\n",
      "accuracy: 1.0\n",
      "RBF核SVM 最优accuracy： 1.0\n"
     ]
    }
   ],
   "source": [
    "#需要调优的参数\n",
    "C_s = np.logspace(-2, 2, 5)# logspace(a,b,N)把10的a次方到10的b次方区间分成N份 \n",
    "gamma_s = np.logspace(-2, 2, 5)   \n",
    "\n",
    "accuracy_s = []\n",
    "for i, oneC in enumerate(C_s):\n",
    "    for j, gamma in enumerate(gamma_s):\n",
    "        tmp = fit_grid_point_RBF(oneC, gamma, X_train, y_train, X_train, y_train)\n",
    "        accuracy_s.append(tmp)\n",
    "print(\"RBF核SVM 最优accuracy：\",format(max(accuracy_s)))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 71,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "accuracy_s1 = np.array(accuracy_s).reshape(len(C_s),len(gamma_s))\n",
    "x_axis = np.log10(C_s)\n",
    "for j, gamma in enumerate(gamma_s):\n",
    "    pyplot.plot(x_axis, np.array(accuracy_s1[:,j]), label = ' Test - log(gamma)' + str(np.log10(gamma)))\n",
    "\n",
    "pyplot.legend()\n",
    "pyplot.xlabel( 'log(C)' )                                                                                                      \n",
    "pyplot.ylabel( 'accuracy' )\n",
    "pyplot.savefig('RBF_SVM_Pima.png' )\n",
    "\n",
    "pyplot.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "由以上输出数值和图可以看出，当log(gamma)为2，log(C)为0时，即gamma=100 C=1，模型accuracy最高，为1.0。"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "综上所述，   \n",
    "Logistic 回归默认参数模型accuracy：        0.6967008799560007      \n",
    "正则化的 Logistic Regression模型accuracy： 0.6982       \n",
    "RBF核SVM模型accuracy：                     1.0     \n",
    "因此，性能最好的模型为RBF核SVM模型。"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.5"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
